WWW 2006 Developer Track - Call for Developer Submissions

2006-03-17 Thread Danny Ayers

Apologies for cross-posts.

The full call is below (and at http://www2006.org/developers/cfp.php),
but in short we're looking for developers to present cool stuff. It
can be anything from a 5 min lightning demo to a 30 min presentation.
Of particular relevance here are the Next Wave sessions : an
umbrella for all those Web 2.0 and Semantic Web things like blogging,
microformats, Atom, Ajax, JSON, mashups, RDF/OWL, SPARQL...

The deadline for proposals is the 19th March, but all we're looking
for at this point is a short description (see below).

-

   The developers' track consists of presentations by developers for
   developers. The audience is expected to be technically capable, and
   wanting to see a 'wow' factor with new functionality. Technical
   nitty-gritty is encouraged. Demos are good. Lightening talks
   consisting entirely of a demo are encouraged.

   To present your work on the developers' track, please respond to this
   call for submissions, by giving us a short description of what it is
   you would like to present, how long a presentation you would like to
   give, and indicate for which session(s) it would be appropriate.

   Submissions are made by email to the Developer Chairs
   ([EMAIL PROTECTED]). Please send the following
   information:

 * Contact information
 * Presentation title
 * The preferred length of the presentation
 * The possible length of presentation, list all that you are willing
   to accept.

lightning
No more than five minutes, for a quick demo. Please
choose this option, even if you would prefer to give a
longer presentation. Not choosing this option indicates
that you do not want to give a lightening talk, even if
there is not space for you to give a longer talk.

10 minutes
20 minutes
The current intention is to mainly have 20 minute
presentations.
30 minutes

 * Session(s). Choose at least one session. List all sessions for
   which you think your submission is appropriate. Note: the final
   decision on which sessions will run has not yet been made, and
   will depend in part upon the submissions received. The sessions
   are as follows:
  + Mobile
  + Society
  + Health
  + Education
  + Science
  + Security
  + Online Media
  + Next Wave Web Technologies
  + Ontologies and Semantic Web
  + XML technologies: XSLT2, XQuery etc.

 * Some other material. This can be:
  + Short description, e.g. one page for a lightening talk, two
pages for anything else. (This is best)
  + Slides: e.g. one or two slides for a lightening talk, ten or
twelve for a longer talk.
  + A demo. This should be submitted as screen shots, with a
short description. It is also possible to give a URL for your
code/demo. (Unless you already have this material available,
you are discouraged from creating it for submission).
   This other material should be in any of the following formats:
  + plain text
  + PDF
  + PNG, GIF, JPEG
  + Powerpoint (not preferred)
  + Word (not preferred)
   If you have more than one file to submit, please create a zip
   archive. Send a single file, or the zip, as an attachment with
   your proposal. If the attachments are too large, send an URL to
   them instead.

 * Optionally a URL to your demo or code

   The submissions deadline is March 19th (midnight in Hawaii).

Special Low Rate for Independent Developers (limited availability)
--

   We are pleased to be able to offer a special very low rate for
   independent developers presenting on the developers track. This is
   available only for self-financing developers (i.e. not receiving
   expenses from their employer or university), who are giving
   presentations on the developers track (including lightening talks).

   The rate is optionally:

 * a free One Day Attendance for the day that the developer is
   participating, or

 * £199 for a Standard Passport conference registration for the
   whole week.

   This rate is obtainable by email application to the Developer Track
   Chairs along with a presentation submission (see below).

   The chairs thank Hewlett Packard for their generosity in sponsoring
   this rate.

--

http://dannyayers.com



Re: Browser behaviour

2006-02-01 Thread Danny Ayers

On 2/1/06, A. Pagaltzis [EMAIL PROTECTED] wrote:

 How about this simple rule? If the request for a feed has a
 referrer, which aggregator presumably[1] never do, then serve as
 `application/xml` with all cache control headers set to expire
 immediately; otherwise, send as `application/xhtml+xml`. (Expiry
 prevents intermediaries from caching it with the wrong MIME
 type.)


 [1] My server logs confirm this assumption for at least 20
 different popular aggregators.

Cunning, but the result of presuming aggregators never do might mean
aggregators never can, and referrer refs. from aggregators may well be
useful.

Cheers,
Danny.

--

http://dannyayers.com



Re: More on atom:id handling

2006-02-01 Thread Danny Ayers

On 2/1/06, A. Pagaltzis [EMAIL PROTECTED] wrote:

 * David Powell [EMAIL PROTECTED] [2006-02-01 17:10]:
 On the contrary, I have a problem with preventing multiple
 revisions from having the same atom:updated value.

 But then you have no idea which revision will be picked by
 clients that try to show the latest one, which to me sounds like
 it fulfills the criteria for a potential interop problem, which
 is exactly what SHOULD is about, so I think this was the right
 choice.

It's not straightforward, this came up pretty quickly in the Atom/OWL
efforts. As Bill said, it's a composite key. In RDF/OWL that has so
far demanded a rule* - somewhat less convenient than having a single
URI as id. The question is, from what is the composite key formed? id
certainly, updated too - but is same id+updated enough? What if other
parts of the entry differ? Different xml:lang even...same entry or
different?

*see also : http://esw.w3.org/topic/CIFP

Cheers,
Danny.



--

http://dannyayers.com



Browser behaviour

2006-01-30 Thread Danny Ayers

The mail below is from the WordPress list, they're discussing
including stylesheet references in Atom docs. Have we got anything
like best practices or more palatable workarounds for these
circumstances? (i.e. in addition to using application/atom+xml)

-- Forwarded message --
From: Pete Prodoehl [EMAIL PROTECTED]
Date: Jan 30, 2006 4:24 PM
Subject: Re: [wp-hackers] XSLT: Sample implementation
To: [EMAIL PROTECTED]


David House wrote:
 Some problems:

 2) Atom support isn't there. Firefox and Konqueror (the browsers I
 tested in) get scared off by Atom's mime type and prompt the user to
 download it. They don't recognise it as XML, so they don't transform
 it. We have two options here: give up or serve as text/xml (I guess
 the latter won't be too popular). Really, browsers should recognise
 application/atom+xml as something they can parse as XML and do so.

That's why I eventually gave up using application/rss+xml and switched
to text/xml for RSS. Maybe it's time to do the same for Atom?

Pete




___
wp-hackers mailing list
[EMAIL PROTECTED]
http://lists.automattic.com/mailman/listinfo/wp-hackers


--

http://dannyayers.com



Atom2RDF via Universal Feed Parser

2006-01-29 Thread Danny Ayers

fyi, Chimezie has a blog post [1] including the mapping below between
Atom as interpreted by Mark Pilgrim's UFP (so it'll also work for
anyRSS) to RDF.

The target app is Emeka, an RDF IRC Agent which uses 4Suite/Versa,
though presumably the same approach could be taken with Redland (via
Python binding) or RdfLib for model/persistence. Whatever the RDF API,
it could form the basis of an Atom Store.

At some point it'll probably be a good idea to capture the mapping
from the core Atom constructs (as expressed in Atom/OWL [2]) to the
other vocabs/ontologies used - FOAF, SKOS, DC, presumably through
owl:equivalentClass/owl:equivalentProperty statements.  (APP construct
mappings to follow, when someone's got a bit of time...)

Each entry is an instance of (atomOwl:Entry,rss:item)

* The URL of the feed - an instance of atomOwl:Feed
* Feed - atomOwl:entry - entries
* entry (link or id as URI) - rdfs:label,skos:prefLabel,dc:title
- entry.title
* entry - dc:description,atomOwl:summary,rdfs:comment - entry.summary
* entry,feed - dc:creator, foaf:maker - foaf:Person
* entry.author_detail.name - foaf:name
* entry.author_detail.email - foaf:mbox
* entry.author_detail.href is the URL of the author
* entries.tags - skos:Collection
* entries.tags.label - skos:prefLabel
* entries.tags.scheme + entries.tags.term (URI resolution) - URI
of skos:Concept
* entry - dc:created,dc:date,atomOwl:published - entry.published


[1] http://copia.ogbuji.net/blog/2006-01-28/A_univesal
[2] http://pragmatron.org/trac/file/pragmatron/atom-owl/AtomOwl.n3


--

http://dannyayers.com



Spec wording bug?

2005-10-14 Thread Danny Ayers

In draft-ietf-atompub-format-11 under 4.2.7  The atom:link Element,
compare and contrast:

[[
4.2.7.4  The hreflang Attribute

   The hreflang attribute's content describes the language of the
   resource pointed to by the href attribute.

...

4.2.7.6  The length Attribute

   The length attribute indicates an advisory length of the linked
   content in octets; it is a hint about the content length of the
   representation returned when the IRI in the href attribute is mapped
   to a URI and dereferenced.
]]

I believe the language of the resource for hreflang makes no sense -
it will be the *representations* that are associated with languages,
and the implies a single language - there may be more than one.

Cheers,
Danny.


--

http://dannyayers.com



Re: Spec wording bug?

2005-10-14 Thread Danny Ayers

On 10/14/05, Robert Sayre [EMAIL PROTECTED] wrote:

 I don't understand the second issue being raised here. Could someone try 
 again?

Robert - sorry, I obviously wasn't very clear. I only wished to bring
a single issue to the list's attention, the discrepancy between the
wording of the spec on hreflang, and what I believe to be its
intended meaning in particular in terms of one of the cited references
(RFC 3986).

4.2.7.4  The hreflang Attribute

The hreflang attribute's content describes the language of the
resource pointed to by the href attribute.

A resource in the sense of RFC 3986, as far as I can tell, may have
multiple representations associated with any number of languages. As
far as I'm aware, the only connection between the language(s) and the
resource is through the representation(s). This view is reflected in
the the other piece of the Atom spec I quoted:

4.2.7.6  The length Attribute

The length attribute indicates an advisory length of the linked
content in octets; it is a hint about the content length of the
representation returned when the IRI in the href attribute is mapped
to a URI and dereferenced.
]]

Antone - I could be wrong, but I don't think this is a content
negotiation issue, simply that the wording munges the resource with
its representation(s). I believe this inconsistent with the WebArch
conceptual model assumed by the rest of the Atom spec, and actually
inconsistent with that other definition inside the spec.

Paul - as I understand it the content isn't identical with the
resource. This distinction may appear picky, but given that the other
definition quoted manages consistency with the referenced specs, it
appears to be possible without much extra effort. I must confess I
have no idea of the IETF line on where accuracy ends and pickiness
begins, or what might be appropriate action under the process - on
that I will happily defer to you. I'm afraid I don't know what you are
referring here:

DA:  and the implies a single language - there may be more than one.

PH:  That's true. And it matches the XML 1.0 spec exactly.

Cheers,
Danny.

--

http://dannyayers.com



Re: Top 10 and other lists should be entries, not feeds.

2005-08-31 Thread Danny Ayers

On 8/31/05, Danny Ayers [EMAIL PROTECTED] wrote:

Correction:

 I doubt there's much difference in terms of effort needed to support
 either the per-entry or in-entry approaches. Capabilities of the
 client might make a lot of difference though 

=

 I doubt there's much difference in terms of effort needed for a publisher to 
 support
 either the per-entry or in-entry approaches. Capabilities of the
 client might make a lot of difference though 

Also what I didn't ask was - as these approaches are already supported
by the Atom format, what's the point of dispute, the aim of this
discussion?

Cheers,
Danny.

-- 

http://dannyayers.com



Project descriptions with Atom

2005-08-09 Thread Danny Ayers

DOAP is Description of a Project, done in RDF.  CodeZoo are using Atom
as a format to receive project updates, using DOAP RDF/XML as a
payload.

Details -

-- Forwarded message --
From: Edd Dumbill [EMAIL PROTECTED]
Date: Aug 3, 2005 10:46 PM
Subject: [doap-interest] CodeZoo launches DOAP support
To: [EMAIL PROTECTED]


http://usefulinc.com/doap/news/contents/2005/08-03-codezoo/read

   O'Reilly's [1]CodeZoo has just launched a major deployment of DOAP.

   CodeZoo is a software registry for code libraries, covering Java,
Ruby
   and Python. Each entry in the registry has a DOAP export available.

   Additionally, developers can provide CodeZoo with an Atom feed
   containing embedded DOAP. This means the repository can be kept up to
   date with releases.

   More information:
 * [2]DOAP in CodeZoo
 * [3]DOAP over Atom
 * [4]Keep CodeZoo up to date with DOAP

References

   1. http://www.codezoo.com/
   2. http://ruby.codezoo.com/about/doap.csp
   3. http://www.codezoo.com/about/doap_over_atom.csp
   4. http://www.codezoo.com/cs/user/create/doap_feedback


___
doap-interest mailing list
[EMAIL PROTECTED]
http://lists.gnomehack.com/mailman/listinfo/doap-interest


-- 

http://dannyayers.com



Re: spec bug: can we fix for draft-11?

2005-08-04 Thread Danny Ayers

On 8/2/05, Bill de hÓra [EMAIL PROTECTED] wrote:
 
 Graham wrote:

  From atompub-format-10, 4.2.6: Its content MUST be an IRI
 
  That to me is demonstrates a very clear intention of the working  group
  that the content must be exactly equal to the IRI. 

My reading too.

 I don't want to allow whitespace. But this
 
 id
   urn:foo
 /id
 
 is going to happen, is going to cause problems, and working around it
 does not strike me as being something you can foist entirely onto the
 spec's end-users. 

Why is it particularly likely to happen?

I don't really understand why this should be treated any differently
than the numerous other problematic things that could happen if one
doesn't take the spec literally. (I'd suggest spec prose trumps RNG
grammar, as there's a lot of other stuff not expressable in the
grammar).

But now the issue has been raised, it does seem reasonable to add a
note (assuming the process is ok for that) to the effect that stray
whitespace in content is an error. I can't see how it can be desirable
to allow it (though am not given to lying in the road).

At the application level we're back to Postel again - publishers
shouldn't pump this stuff out,  but liberal clients may find it useful
to trim whitespace from IRI and date fields. But surely that's outside
the scope of the format spec itself.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Introduction to The Atom Syndication Format

2005-08-02 Thread Danny Ayers

Looks great.

My only suggestion would be to expose the MUSTs etc. little more,
especially where Atom differees from RSS. E.g. right now it would be
easy for someone coming from RSS 2.0 to think that id was the same
as guid.

So in this case maybe:
Identifies the feed in a universally unique and permanent way.
=
Identifies the feed in a universally unique and permanent way, using an IRI.
or perhaps
Identifies the feed in a universally unique and permanent way,
according to rfc3987.

Cheers,
Danny.


-- 

http://dannyayers.com



Re: Atom RDF/OWL models

2005-07-25 Thread Danny Ayers

On 7/24/05, Ian Davis [EMAIL PROTECTED] wrote:

 Don't forget danbri's Atom/RDF subset[1]. It's not a translation but
 it's worth attempting to interpret it using one of them.

Thanks Ian, I assumed everyone already knew about that ;-)

Anyhow I've dumped the list onto the ESW Wiki:

http://esw.w3.org/topic/AtomRdf

Additions and gardening appreciated.

Cheers,
Danny.

-- 

http://dannyayers.com



Atom RDF/OWL models

2005-07-24 Thread Danny Ayers

Hi folks,

I'm trying to collect a list of mappings Atom - RDF/OWL. Anyone that
has such a thing, can you please drop me a pointer to the latest
version(s) of any schemas, XSLT or whatever you might happen to have
lying around. Notes on how current they are, or anything else of
relevance appreciated.

So far I've got the following:

Henry Story's material, mostly (I think) looking for a direct mapping
with a Atom-specific vocabulary (there's also his BlogEd material, on
using Atom/OWL as the internal representation in a blogging tools).
I'm not sure, but this might be OWL DL.
Most recent date mentioned is 2004-11-09, not sure which is the latest
Atom draft covered.
http://bblfish.net/work/atom-owl/

David Powell's full and fairly verbose RDF schema, again I think it's
an Atom-specific vocab :
http://djpowell.net/atomrdf/0.1/
Dates from 2005-03-22, covers draft-05.
it can be viewed through a nifty little styled-TriX converter:
http://djpowell.net/rdftrix/

Dave Beckett's got support for Atom 0.3 in Redland (RDF toolkit),
specifically in the Raptor Parser kit - he's currently looking to
update this to 1.0:
http://librdf.org/raptor/ 

Mark Nottingham's talked about Atom/OWL in the context of his
sparta.py simple API for RDF, not sure if he's done a schema:
http://www.mnot.net/blog/2005/03/17/sparta

Mark Woodman has done some work with Atom + Jena, producing JavaBeans.
http://inkblots.markwoodman.com/index.php?p=13

My own notes+ XSLT+schema, old old old, pre-0.3 I think. I'll update
all this asap with whatever I can gather.
http://semtext.org/atom/

There are also some very early ones around Sam's blog somewhere - I
seem to remember one that attempted to map all the Atom constructs to
existing vocabs, DC etc. (I've a feeling that put a lot of folks off
RDF/XML ;-) I think  Aaron S. and Norm W. have both a mapping or two.
Bet sbp's got one too.
http://www.intertwingly.net/blog/

Cheers,
Danny.

-- 

http://dannyayers.com



Re: [rss-media] Re: Media extensions

2005-07-18 Thread Danny Ayers

On 7/18/05, Robert Sayre [EMAIL PROTECTED] wrote:

 Media RSS already has an effective editor who is also a good listener:
 Yahoo's David Hall. If the Media RSS folks (or some other constituency
 who've done their homework) want to use this WG as their venue, that
 would be great. If not, I would be opposed to modifying the charter.
 That seems like self-perpetuating bureaucracy.
 
 Another way of putting it would be that, absent new participants, I
 favor completing the autodiscovery and protocol drafts and closing the
 WG.

+1

I suspect the accumulated WG fatigue means probably the only viable
route would be with the help of new blood. That isn't to suggest a
completely new WG might not be appropriate, I honestly don't know.

It might be that all is needed that the model described in Y!mRSS be
abstracted from the RSS 2.0 specifics, then re-expressed as Atom 
RDF. Given that Atom (and RDF) both have fairly clean extension
mechanisms, it shouldn't be necessary to cover every edge case in the
'primary' media extension, just get the core down.

Cheers,
Danny.

  
-- 

http://dannyayers.com



Evangelism, etc.

2005-07-16 Thread Danny Ayers

If I could distract folks from the champagne and crudities for a moment:

First - I just received a rewrite of the spec draft in nicely-styled
XHTML 1.0, from someone (who wishes to remain anonymous) who refers to
the IETF docs as so 1989 -

http://dannyayers.com/atom/draft-ietf-atompub-format-10.xhtml

Second - I just read 3 reviews of Atom (linked from Dave Winer's blog)
containing significant criticism, much of it valid. However the target
of these posts wasn't Atom itself, but the 'RSS 2.0 and Atom Compared'
doc (on the Wiki/Tim's snapshot). It does make sense to make the info
available in a friendly fashion, but in this case it seems to have
backfired. A suggestion for subsequent material - assume the RSS
community doesn't know the difference between normative and
informative.

Third - any suggestions for something useful to do with the 'Finally
Atom' blog/data [1]? I set it up on a TypePad account when they were
beta, but have been paying for it since they came out of beta. I can't
really justify the expense any more, especially since I don't really
have time to make it any more interesting than endless 'X supports
Atom'. (I don't think the protocol needs promotion in the same way as
the format did).
On a not-unrelated note - who's the best contact for atomenabled.org?  

Cheers,
Danny.

[1] http://danja.typepad.com/fecho/



-- 

http://dannyayers.com



Re: Media extensions

2005-07-16 Thread Danny Ayers

On 7/16/05, A. Pagaltzis [EMAIL PROTECTED] wrote:
 
 * James M Snell [EMAIL PROTECTED] [2005-07-16 20:05]:
  If the community can drive a viable solution without the
  overhead of a formalized standardization process, it will work
  out best for everyone and the anti-formal-standards crowd will
  have far less to complain about or will at least be able to
  devote more time to bashing atom ;-)

Yahoo!'s approach did seem to work very well without any formal
process, effectively just a mailing list and editor. But then Apple
came along...

 Yeah – wasn't the idea about specifying extension mechanisms so
 thoroughly in the Atom format spec that it would allow anyone to
 bolt on things via a variety of available hooks, ad-hoc, without
 needing to define semantics and having worry about interop anew
 each time? 

Indeed it was. But for the extensions themselves, there is still
plenty of scope for poor design and near-(but not quite)-duplication
of work. I'm honestly not sure there's any group activity that could
help, but while there are still people in the room I think it's worth
considering. *If* a WG-like approach to media in Atom was the best
approach, now would be the time to do it.

A strong base spec should be able to carry organic
 growth without requiring reliance on the legitimization of a
 standards body to make things work; legitimization can be granted
 retrospectively by writing down existing practice. (I am reminded
 of Shirky's praise of evolvable systems. And heck, Atom itself
 is an example of this.)
 
 So yeah, I don't Yahoo or Apple need to be pushed towards a
 standards body. It would be enough if are willing to iterate
 their specs before finalizing them, with input from a crowd of
 eyeballs. Apple seems willing to do that now; John Gruber argues
 it's because they were scampering to get to the market with
 podcasting in iTunes. 

Ah, that's good to hear.

 Yahoo has been, from the start.
 
 I think the timing for Atom going gold couldn't have been much
 better; had it taken a bit more time, then all discussion of the
 podcasting and media extensions would have had to revolve solely
 around RSS since there wouldn't have been any Atom format to
 think about. 

Hmm, how podcasts are there? 
How many are in Atom? 
How do you even *do* a podcast in Atom? (This is kind-of what I'm
trying to get at ;-)
What clients support podcasts in Atom? 

We should be glad that the spec was pushed through
 at the final stages; a tip of the hat to the WG chairs and
 members who insisted on making haste with a Good Enough text.

Yep, good men.

Cheeers,
Danny.

-- 

http://dannyayers.com



Re: Evangelism, etc.

2005-07-16 Thread Danny Ayers

On 7/16/05, Robert Sayre [EMAIL PROTECTED] wrote:
 On 7/16/05, Danny Ayers [EMAIL PROTECTED] wrote:
 
  Second - I just read 3 reviews of Atom (linked from Dave Winer's blog)

 I found the criticism pathetic.

Well, yes, but you're more familiar with the reality than most people
that are likely to read that post.
 
 As for Alex Bosworth's post, a commenter said This post is rubbish
 and way off base. I'm inclined to agree. Seems like a publicity
 stunt.

Quite possibly. But such things will influence the adoption of Atom.
Put it this way - there are millions of RSS 1.0 feeds out there, and
pretty much all tools support it. Yet even well-informed people are
pointing to RSS 2.0 and Atom Compared as if there were no other
alternative.
I hardly think RSS 2.0 has gained the popularity it has through
technical merit.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Evangelism, etc.

2005-07-16 Thread Danny Ayers

On 7/16/05, Walter Underwood [EMAIL PROTECTED] wrote:

 But there is a point buried under all that. What are the changes required
 to support Atom? It looks complicated, but how hard is it? Here is a shot
 at that information.

Thanks Walter, this is good...

 For publishers, you need to be precise about the content. There are fallbacks,
 where if it is any sort of HTML, send it as HTML, and if it isn't, send it
 as text. The XHTML and XML options are there for extra control.
 
 Also, add an ID. It is OK for this to be a URL to the article as long as
 it doesn't change later. That is, the article can move to a different URL,
 but keep the ID the same.
 
 Add a modified date. The software probably already has this, and you can
 fall back to the file last-modified if you have to. But if there is a
 better date available, use it.
 
 The ID and date are required because they allows Atom clients and aggregators
 to get it right when tracking entries, either in the same feed or when the
 same entry shows up in multiple feeds.
 
 Extending Atom is different from extending RSS, because there are more 
 options.
 The mechanical part of extensions are covered in the spec, to guarantee that
 an Atom feed is still interoperable when it includes extensions. The political
 part of extensions has two options: free innovation and standardization. 
 Anyone
 can write an extension to Atom and use it. Or, they can propose a standard to
 the IETF (or another body). The standards process usually means more review,
 more interoperability, and more delay in deploying it. Sometimes, the delay
 is worth it, and we hope that is true for Atom.

Cheers,
Danny.


-- 

http://dannyayers.com



Re: Atom for RDF transfer?

2005-07-10 Thread Danny Ayers

On 7/10/05, Mark Nottingham [EMAIL PROTECTED] wrote:
 Hi Danny,
 
 What does Atom bring to the table here? Sounds like straight REST
 would do the trick admirably for you...

Maybe, hopefully. I'm not sure whether an update (delete graphA, add
graphB) could be better done with more 'memory' (state, I guess) that
a series of simple metadata-stamped entries could supply.

Cheers,
Danny.

-- 

http://dannyayers.com



Atom for RDF transfer?

2005-07-09 Thread Danny Ayers

While everyone's waiting for ratification of the Atom format, maybe
there are a few brain-cycles that can be harnessed...

What I (and others [1]) am looking for is a standard means of
interfacing with an RDF store like Redland or Jena over HTTP. The
operations required are:

1. query the store
2. add statements to the store
3. delete statements from the store
4. make an update to the store
(5. sync stores)

The first of these is reasonably well provided for already with
SPARQL. There appears to be some commonality of aproaches to 2, 3 and
4, but no single standard seems yet to have emerged. 5. is something
needed sometime before long, but could probably be fulfilled with the
other points and an appropriate algorithm (possible approaches at
[4],[5]).

Now ideally all the operations would be done directly over HTTP, but
there are one or two issues, and I'm wondering if the Atom
format/protocol could form a consistent, easily implemented
lightweight delivery mechanism as an alternative. It'd be tunneling,
but without all the WS-* overhead. The interchange format specified
for RDF is XML (i.e. RDF/XML) so that's the first hurdle hopped.

This kind of thing is being covered to some extent by the W3C Data
Access WG (DAWG) and Semantic Web Best Practices and Deployment WG,
but they are tied to their charters. A good solution from left-field
(built on good standards) could fast-forward development.

So first the status quo, as far as I'm aware:

1. ask the store a query
The SPARQL protocol and RDF query language [2] is emerging as the
standard for queries, i.e. read-only operations. The query language
itself is fairly SQL-like. The protocol as it currently stands has a
generic WSDL 2.0 expression, but in practice *the* binding so far is
to HTTP, using the query itself as a parameter in a GET:

GET http://example.com/sparqlendpoint?query=...bunch of sparql...

The results are returned as a XML doc in the response body, the format
of which will depend on the nature of the query (there's a simple
result-set format for SELECTs, RDF/XML for CONSTRUCT etc).

The operations of 2, 3 and 4 can be covered by a protocol in a similar
fashion: by supplying an RDF graph to add, a graph to delete, or a
combined operation for update supplying a graph to delete followed by
a graph to add. I'll just expand that a little before describing
existing protocol support -

2. add statements to the store
Data can be added to an RDF store by supplying a list of statements,
that is the graph, as an RDF/XML doc. This is something all
triplestores should support.

3. delete statements from the store
This is a little trickier, there isn't any operation common to stores
that says delete(graph). In practice this may mean listing and
deleting the individual statements. I think there may be issues where
the graph to delete matches a subgraph in the store where the nodes
aren't sufficiently bound to URIs to make matching unambiguous.
Frankly I'm not sure, but I don't think it would impact on the
protocol.

4. make an update to the store
A two phase operation, delete(graphA), add(graphB). It would be nice
for this to happen as an atomic transaction.

Ok, existing protocols/proposals include the NetAPI [6,7], and Joseki:
RDF WebAPI [8] (I think this is currently moving over to SPARQL for
queries, not sure about updates).

The NetAPI use a two-part mime/multipart message with a HTTP POST, the
first containing the graph to delete, the second containing the graph
to add. Adding and deleting alone are special cases. (I seem to
remember there being some issues relating to the use of mime/multipart
around Atom, I can't for the life of me remember what they were).

There's also URIQA, which can provide the operations listed, but is
more aligned towards working with authoritative sources, i.e. where
the host owns the resources identified. Technically it looks good,
but involves the addition of extra HTTP methods, which has caused some
controversy.

So how might all this be done in Atom? I don't really know, beyond
thinking perhaps that many of the interfacing operations with a
triplestore may be exressed nicely as a sequence of entries, content
as graphs, each entry representing an add/delete operation.

Cheers,
Danny.

[1] http://lists.gnomehack.com/pipermail/redland-dev/2005-July/001019.html
[2] http://www.w3.org/TR/rdf-sparql-query/
[3] http://www.w3.org/TR/rdf-sparql-protocol/
[4] http://www.w3.org/DesignIssues/Diff
[5] http://www.dbin.org/
[6] http://www.w3.org/Submission/2003/SUBM-rdf-netapi-20031002/
[7] http://www.wiwiss.fu-berlin.de/suhl/bizer/rdfapi/tutorial/netapi.html
[8] http://www.joseki.org/protocol.html
[9] http://sw.nokia.com/uriqa/URIQA.html

-- 

http://dannyayers.com



Re: Major backtracking on canonicalization

2005-07-07 Thread Danny Ayers

On 7/7/05, Bob Wyman [EMAIL PROTECTED] wrote:
 
 Paul Hoffman wrote:
  Now that I understand this better, I believe that our text should read:
 
 Thank you for catching this. You've saved us major pain!

+1


-- 

http://dannyayers.com



Re: Clearing a discuss vote on the Atom format

2005-07-02 Thread Danny Ayers

+1 to Paul's suggestions, with the adjustments as suggested, worded as
the editors feel comfortable.

Without deployment of signed Atom to draw on this is unlikely to be
perfect. Just do whatever it takes to satisfy the discuss.

-- 

http://dannyayers.com



Re: Microsoft, RSS Atom

2005-06-25 Thread Danny Ayers

On 6/25/05, James M Snell [EMAIL PROTECTED] wrote:

[snip]

 http://www-128.ibm.com/developerworks/blogs/dw_blog_comments.jspa?blog=351entry=84636.

I generally agree. Strongly, when you talk of the best advocacy being
through demonstration.
 
The MS extension is a little unusual in that it impacts other elements
(giving them a datatype), it's an architectural forms kind of thing.
But I *think* it'll still play ok in Atom. Hopefully someone will have
time to look deeper. Has anyone done Yahoo!'s Media RSS as Atom yet,
btw?

Other comments  some links at:
http://dannyayers.com/archives/2005/06/24/ms-rss/

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Google Sitemaps: Yet another RSS or site-metadata format and Atom competitor

2005-06-16 Thread Danny Ayers

Ach, late to the thread again.

When I saw Google Sitemaps I also thought of RDF Site Summary, and did
a sitemap2rss.xsl. But as noted already the role of RSS has mutated
from site summary to a content delivery format, so it wasn't a very
good fit. But it was straightforward to take their data and express it
as RDF in a more natural fashion, see:
http://dannyayers.com/archives/2005/06/03/google-sitemap/

I think Atom could have been a good format for this purpose without
the need for any other. I disagree with Walter, I believe the Sitemap
terms are defined well enough to be reused.

I've pasted that of priority below - it basically says where a
crawler's resources are limited, URLs with a higher priority on a site
should be crawled first/in preference to others on the site. That
could be a nice like Atom extension.

Cheers,
Danny.

-

priority
Definition
Optional. The priority of a particular URL relative to other pages on
the same site. The value for this tag is a number between 0.0 and 1.0,
where 0.0 identifies the lowest priority page(s) on your site and 1.0
identifies the highest priority page(s) on your site.

The default priority of a page is 0.5.

Please note that the priority you assign to a page has no influence on
the position of your URLs in a search engine's result pages. Search
engines use this information when selecting between URLs on the same
site, so you can use this tag to increase the likelihood that your
more important pages are present in a search index.

Also, please note that assigning a high priority to all of the URLs on
your site will not help you. Since the priority is relative, it is
only used to select between URLs on your site; the priority of your
pages will not be compared to the priority of pages on other sites.




-- 

http://dannyayers.com



atom:type, xsl:output

2005-05-23 Thread Danny Ayers

[forwarding for Jimmy, he's having mail problems]

From: Jimmy Cerra [EMAIL PROTECTED]

I'm a little confused by the type attribute for atom:content and other
elements.  This the following correct?

* When @type=html then the content of the element is a xsd:string
[1] of an HTML DIV element plus optional insignificant whitespace
around it.  Which version of HTML is defined?  How do you
differentiate between HTML 4.01, HTML 3.2, the upcoming HTML 5, or
nonstandard HTML (like with marquee elements)?

* When @type=xhtml then the content of the element is a xhtml:div
XML fragment plus optional insignificant whitespace around it.  Again
which version of XHTML is defined?  How do you differentiate between
XHTML 1.0, 1.1, or 2.0? Since XHTML 2.0 may have a new namespace, so
will you allow that?  How does requiring XHTML:div impact which XHTML
modules are required (I have a guess)? And what about exotic versions
like XHTML+MathML+SVG or XHTML 1.1 plus MathML 2.0?  (Some blogs
actually use it XHTML 1.1 plus MathML 2.0!)

* When @type=text then the content of the element is a xsd:string of
a text/plain document.

* When @type=mime/type [2], ONLY for atom:content, then the content
(or src document) is that type of document.  Why not allow other
elements to use this? What about content that isn't compatible with
XML 1.0 (like XML 1.1, Turtle, RTF, PNG); should it be entity
encoded/put into cdata section like HTML?  What should one do when
encountering these situations?

Does that mean that if you use application/xhtml+xml, you can do
(rest of feed omitted for brevity):

atom:content type=application/xhtml+xml
  html xmlns=...
headtitle.../title/head
body ... /body
  /html
/atom:content

How do you specify xml-stylesheets processing instructions, doctype
and xml declarations, and other data about the content?  PIs may be a
non-issue if they are not read by the XML processor for the Atom feed;
although, that isn't guaranteed.

I think you should at least allow @type=xml, as others have
suggested for xml 1.0 content, along with adopting XSLT's output
attributes (perhaps not using @method or @media-type).  This would
ease the pain with XML, and all media/types for @type require the
content to be xsd:string valid (that is, entity encoded or using CDATA
sections).

Sorry for the boatload of questions.

--
Jimmy Cerra
http://pawsgroup.blogspot.com

[1] That is, a text node in the XML tree.

[2] A mime type, noting the exception in 4.1.3.1.



Re: Author and contributor

2005-05-23 Thread Danny Ayers

I'm not 100% convinced of the need for contributor, but in the
interests of consensus:

+1 make atom:author plural
+1 keep atom:contributor
+1 punt bylines to an extension

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Compulsory feed ID?

2005-05-19 Thread Danny Ayers

On 5/19/05, Sam Ruby [EMAIL PROTECTED] wrote:

Graham Park has proposed that we loosen the existing language to
permit duplicate ids in the case where the entries have atom:source
elements which identify different URI's in self links. I support
this compromise and believe it should be supported by the WG and
incorporated into the Atom Draft.

I believe it makes sense to give the notional atoms (entries)
individual identifiers which will be preserved globally, irrespective
of the source, irrespective of where the entries are found - so yes,
duplicate IDs in a feed seem an acceptable scenario.

I don't personally care how it's done, but a reference back from the
feed document to the URI from whence it is begetted is pretty
essential for the easier one-click subscription strategies, and should
come in handy later for aggregate-republish processing.

I think a reference back to the source (original better, intermediate
better than nothing) is also desirable to help reduce duplicate posts
appearing in any end-of-chain UI.

Take this scenario - two entries identical in every respect *except*
for their ID. Any resource on the Web may have any number of different
URIs, which suggests any entry might /potentially/ have any number of
IDs. Should the two entries be allowed in the same feed? If you change
the name of an entry, do you change its nature? Sorry, slipping,  it's
a bit late here - scratch the philosophy, ;-)

Basically I reckon duplicate IDs in a feed are ok - leave it to the
(final or intermediate) consumer to filter out if required according
to local rules/heuristics.

Cheers,
Danny.
 



-- 

http://dannyayers.com



Re: Atom 1.0?

2005-05-11 Thread Danny Ayers

  Marketing: Atom
  Technical: Atom (RFC)

+1


-- 

http://dannyayers.com



Re: Updated Atom2RDF stylesheet

2005-03-25 Thread Danny Ayers

On Mon, 21 Mar 2005 23:16:57 +, David Powell [EMAIL PROTECTED] wrote:
 
 
 I've updated my Atom to RDF/XML XSLT transform to implement draft-06.

Great stuff!

I've updated links etc. accordingly at: 

http://semtext.org/atom/

Anything needs adding there, please let me know.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Person identity

2005-03-19 Thread Danny Ayers

The use cases are good, and even before you start looking at the
relationship between entries and people there are limits to what you
can do with the author/contributor constructs.

This general issue has had 4+ years of hammering in theory and
practical deployment around FOAF, which is been successfully used in
RSS 1.0 feeds. This kind of data can be stored/queried reasonably
efficiently in databases.

There's a write-up Identifying things in FOAF:

http://rdfweb.org/mt/foaflog/archives/39.html

Cheers,
Danny.



-- 

http://dannyayers.com



Re: Person identity

2005-03-19 Thread Danny Ayers

On Sat, 19 Mar 2005 11:55:06 +, Bill de hÓra [EMAIL PROTECTED] wrote:

Extend Atom with
 FOAF instead if you really need these capabilities in the near term.

Yep, given the timescales involved, that sounds like a good pragmatic solution.

Even if Atom doesn't support it, and feeds don't use the extension,
your own database can implement something like FOAF smushing based
on properties of entries. If you find two entries with an author
(foaf:name) Bill de h#211;ra associated (directly or indirectly)
with URI (foaf:homepage) http://www.dehora.net/journal/ then chances
are it's the same person.

Cheers,
Danny.
-- 

http://dannyayers.com



Re: Migrating extensions (was: [rss-media] Coexistence with Atom ?)

2005-03-05 Thread Danny Ayers

On Sat, 05 Mar 2005 09:45:56 -0800, Tim Bray [EMAIL PROTECTED] wrote:
 On Mar 5, 2005, at 6:25 AM, Graham wrote:
 
  I suggest we set up a panel to assess new extensions. They will
  solicit bids from all the major vendors for threading, video, audio
  etc and the best in each category will be chosen. If a vendor chooses
  to use there own extension over the one we choose for them, they will
  have just 48 hours until bombing commences.
 
 Damn good thinking.  But bombing may be sub-optimal; how about
 retaining the services of a ring of ruthless hired killers instead?

Yep. Even considering the economies outsourcing can offer, long term I
bet employment of mercenaries works out cheaper than the programmers
needed to support Nx(N-1) extensions...

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Migrating extensions (was: [rss-media] Coexistence with Atom ?)

2005-03-04 Thread Danny Ayers

On Thu, 24 Feb 2005 20:12:23 +, David Powell [EMAIL PROTECTED] wrote:
 
 
 One of the reasons for proposing PaceExtensionConstruct [1] was to allow 
 existing RSS extensions and RDF properties to be used in Atom.
 
 If we have no model for extension elements, other than that they are bits of 
 opaque infoset hanging in specific but meaningless places, then it seems that 
 we need to redefine all existing extensions for use in Atom on a case-by-case 
 basis.  This thread seems to confirm that.
 
 Is that the best that we can come up with?

Try asking again in a year or so's time, when we have an audio
extension defined by Microsoft for Microsoft applications, a threading
extension defined by Google for Google applications and a video
extension defined by Yahoo for Yahoo applications. Case-by-case will
favour those with the weight to ensure enough deployment to bootstrap
general adoption. The long term network-effect driven gains of interop
are outweighed by the short-term competitive advantage of features.
Proprietary Atom solutions here we come!

Cheers,
Danny.

-- 

http://dannyayers.com



Re: FotoNotes extension (was: AtomPubIssuesList for 2005/02/22)

2005-03-03 Thread Danny Ayers

On Wed, 23 Feb 2005 00:05:09 -0500, Robert Sayre [EMAIL PROTECTED] wrote:
 
 Paul Hoffman wrote:
 
  This is also a reasonable time to start creating format extensions  and
  talking about them here.
 
 Here's one that's sort of done:
 http://fotonotes.net/spec/index.cgi?FotoNotesSpecification
 
 This is what will carry Flickr annotations, and they do it with Atom and
 RDF. They made a few mistakes. One of them centered around the purpose
 of atom:id. That means *smart people miss the point*, because it's a
 subtly different than RSS. I think starting the example atom:id with
 urn:uuid instead of vemmi://; would help quite a bit.

Now the Tag URI scheme's [1] been approved by the IESG, maybe that's
worth considering again.

If I get chance I'll see what Yahoo's Media RSS looks like as Atom
(it's currently written for RSS 2.0). I had a play the other day and
it translated into RDF/XML with RSS 1.0 pretty nicely [2], I think it
could also lend itself to being a fairly format-agnostic vocabulary in
a similar manner to FotoNotes.

Cheers,
Danny.

[1] http://www.taguri.org/
[2] http://dannyayers.com/archives/2005/03/01/yahoo-rss-media-as-rdf/

-- 

http://dannyayers.com



Re: Consensus call on last round of Paces

2005-02-19 Thread Danny Ayers

Hmm, I've been a little distracted, but I thought
PaceExtensionConstruct did get a reasonable amount of support.
+1 from me anyway.



On Tue, 15 Feb 2005 11:12:48 -0800, Tim Bray [EMAIL PROTECTED] wrote:
 
 Methodology: Paul  I went through *all* the WG emails that directly
 commented on the currently open issues (see
 http://www.intertwingly.net/wiki/pie/AtomPubIssuesList); in most cases
 the calls were pretty clear.  As always, we may have mis-read the
 group, feel free to say so if you think so.
 
 The intent is that this email serve as guidance for the editors in
 preparing the format draft that we send out for IETF last call.  We do
 not expect further material discussion of format-related Paces, it's
 now over to the whole IETF.  On the other hand, discussion of editorial
 changes is always fair game, please keep reporting what you find to the
 list, and we wouldn't be surprised if the editors turned up some corner
 cases too.
 
 PaceAggregationDocument  PaceAggregationDocument2
 One -1, nobody unambiguously in favor.
 DISPOSITION: Close them.
 
 PaceAggregationInSeparateSpec
 Only a couple of voices in favor, some support conditional on profiles.
 DISPOSITION: Close it, but given that the other aggregation-related
 Paces seem to be failing, it seems like a separate spec is the only
 place that this kind of work gets done.
 
 PaceArchiveDocument
 A howling mob of sharp pointy -1's.
 DISPOSITION: Close it.
 
 PaceClarifyDateUpdated
 A couple of -1's, one fuzzy +1.
 DISPOSITION: Close it.
 
 PaceCollection
 One pro, one contra, not much discussion.
 DISPOSITION: Not enough support, close it.
 
 PaceCommentFeeds
 Two contra, one pro, some suggestion that we really need
 link/@rel=comment.
 DISPOSITION: Not enough support, close it.
 
 PaceDatesXSD
 Everyone seems to like it, enough people want the regex that it's
 accepted too.
 DISPOSITION: Accepted, Sayre suggested good wording calling in all the
 specs that are covered.
 
 PaceEntriesElement
 Drowning in -1's.
 DISPOSITION: Close it.
 
 PaceEntryOrder
 One -1, but overwhelming support otherwise.
 DISPOSITION: Accepted.
 
 PaceExtensionConstruct
 One -1, 1.5 +1's.
 DISPOSITION: Not enough support, close it.
 
 PaceFeedRecursive
 Lots of -1's.
 DISPOSITION: Close it.
 
 PaceFeedState
 Lots of -1's.
 DISPOSITION: Close it.
 
 PaceNoFeedState
 A few +1's, nothing negative.
 DISPOSITION: Accepted.
 
 PaceFormatSecurity
 Evenly split +1's and -1's.
 DISPOSITION: No consensus and we have PaceSecuritySection, close it.
 
 PaceHeadless
 Lots of talk, more -1's than +1's.
 DISPOSITION: No consensus, close it.
 
 PaceIconAndImage
 One -1, but broad support otherwise.
 DISPOSITION: Accepted.
 
 PaceLangSpecific
 Not a lot of discussion, but pretty positive.
 DISPOSITION: Borderline, but accepted.
 
 PaceLinkEnclosure
 A little bit of support, but with reservations.
 DISPOSITION: A messy Pace and not enough support, close it.
 
 PaceLinkRelVia
 Moderate support, no objections.
 DISPOSITION: Borderline, but accepted.
 
 PaceMultipleImages
 Lots of -1's.
 DISPOSITION: Close it.
 
 PaceMustBeWellFormed
 Very little discussion, no unambiguous support.
 DISPOSITION: Our longest-lived Pace is finally closed.
 
 PaceOrderSpecAlphabetically
 A bit of support, not much talk.
 DISPOSITION: This is editorial, let the editors run with it.
 
 PaceProfile
 Changed along the way, quite a few +1's but even more -1's.  A certain
 amount of +1 on concept, -1 on syntax which doesn't help.
 DISPOSITION: No consensus, close it.
 
 PaceProfileAttribute
 No significant support.
 DISPOSITION: Close it
 
 PaceRemoveInfoAndHost
 Not much discussion, but no opposition.
 DISPOSITION: Borderline, but accepted.
 
 PaceRemoveVersionAttribute
 Quite a bit of support, quite a bit of grumbling but no loud -1's.
 DISPOSITION: Borderline, but accepted.
 
 PaceRepeatIdInDocument
 Lots of discussion, more -1's than +1's.
 DISPOSITION: No consensus, close it.  But now we have a problem, in
 that this removed ambiguity in one direction, just closing it leaves
 the ambiguity.  So the only logical conclusion is that the WG is
 directing the editors to put language in that explicitly forbids
 entries with duplicate atom:id in an atom:feed.
 
 PaceSecuritySection
 More support than opposition, but some feeling that the IETF is going
 to make us do something like this anyhow.
 DISPOSITION: Borderline, but accepted.
 
 PaceTextRules
 Only one (positive) comment.
 DISPOSITION: Not enough support, close it.
 
 PaceXhtmlNamespaceDiv
 This is tough.  There are some people who are really against this and
 who aren't moving.  On the other hand, there are way more who are in
 favor.  Reviewing the discussion, the contras are saying that this is
 sloppy and unnecessary and if it solves a problem, that problem really
 shouldn't be there, but they don't seem to be saying it's actively
 harmful.  But the people in favor are arguing that this will reduce
 errors and improve interop.  Also, the Pace was changed in 

Re: Rehashing? Why is link required in entry?

2005-02-11 Thread Danny Ayers

+1 to removing this bit.

[[
4.2  The atom:head Element
...
   o  atom:head elements MUST contain at least one atom:link element
  with a rel attribute value of alternate.
]]

The per-entry link has been dealt with, I suspect the per-feed link
slipped under the net. The rationale is similar.

http://www.intertwingly.net/wiki/pie/AtomPubIssuesList
has
http://www.intertwingly.net/wiki/pie/PaceContentOrLink
Accepted for Incorporation - Incorporated-Format-04

Abstract
Make atom:link required ONLY IF atom:content is not present. 


On Fri, 11 Feb 2005 16:40:22 -0500, Norman Walsh [EMAIL PROTECTED] wrote:
 A quick skim of the last 1000 messages on this list doesn't reveal
 recent discussion. Apologies if the issue's been put to bed and I'm
 just being clueless.
 
 I'm building an Atom feed for the changes to norman.walsh.name.
 Whether you want to track changes to my blog is open to question, but
 a feed of changes to a repository I cared about would definitely be of
 interest to me.
 
 Here's an example of what I'm generating now:
 
 entry
titleRevision 20/title
!-- This is a lie. --
link rel=alternate type=text/html href=http://norman.walsh.name//
idhttp://norman.walsh.name/Subversion/R20/id
updated2005-02-11T12:34:51.027481Z/updated
author
   namendw/name
/author
summary type=TEXTFixed URI typo/summary
content type=TEXTFixed URI typo
 
 M /2005/02/09/subversion.xml/content
 /entry
 
 The problem is that link element. Each entry represents a revision
 to the repository and that revision doesn't have any alternate
 representation.
 
 The options as I see them:
 
 1. I could lie.
 2. I could leave it out and not worry about it.
 3. I could be devious and use:
   http://norman.walsh.name/atom/subversion.xml#xpointer('/1/2/6')
Though I'd have to use content type=HTML then, I think.
 4. Actually go and create a representation and point to it.
 5. Persuade the WG to make link optional if there's a content construct
that isn't empty.
 
 I might do 4, just because I want to be compliant and it wouldn't be
 that hard, but I would guess that most folks won't do that.
 
 Maybe we've already decided to do 5 and I'm just behind the times.
 
 Otherwise, can I convince the WG to do that? :-)
 
 Be seeing you,
   norm
 
 --
 Norman Walsh [EMAIL PROTECTED] | I have come to believe that the whole
 http://nwalsh.com/| world is an enigma, a harmless enigma
   | that is made terrible by our own mad
   | attempt to interpret it as though it
   | had an underlying truth.--Umberto Eco
 
 
 


-- 

http://dannyayers.com



Re: type=HTML

2005-02-10 Thread Danny Ayers

On Tue, 08 Feb 2005 15:36:11 +0100, Julian Reschke
[EMAIL PROTECTED] wrote:

 Shouldn't we at least give content producers the hint that producing
 XHTML content is preferred over HTML? (sorry if I'm opening a can of
 worms here)

Sounds reasonable, but as type=XHTML. 

Escaping XHMTL seems to be defeating the object somewhat (we should be
encouraging XML processing rather than tag soup microparsing).


-- 

http://dannyayers.com



Re: PaceProfile

2005-02-09 Thread Danny Ayers

On Tue, 08 Feb 2005 12:47:51 +, Bill de hÓra [EMAIL PROTECTED] wrote:

 +1 on the concept. I've seen enough cases in the last week to suggest
 it's useful.

+1

 -1 on @profile - use an @rel to hold the content instead. I'm not sure
 whether atom:feed should get an @rel or whether we should use
 atom:feed/atom:[EMAIL PROTECTED]

Not sure on this - the @profile name might act as a good hint to its purpose.

+0, looking forward to some refactoring of the proposals...

-- 

http://dannyayers.com



Re: PaceStopArguingAboutSlidingWindowsAndCurrentStateEnoughAlready

2005-02-08 Thread Danny Ayers

On Tue, 08 Feb 2005 10:40:43 +, Bill de hÓra [EMAIL PROTECTED] wrote:
 
 Henry Story wrote:
  If you just want to stick to syntax, then please leave the pace
  as it is. Don't try to impose a model through syntax and then
  argue that people can't argue about the model that you are
  surreptitiously trying to introduce.
 
 Henry, I have no idea what you are talking about.

I think all Henry's referring to is the implicit model - only so much
is made explicit in the spec. There's the obvious containership
semantics of XML, there are also plenty of assumptions being made
about server/client architectures. Bits over the wire are useless on
their own, when semantics are to be attached to them there is benefit
in them being standardised through specs.

However even if there was the will to define a model, I can't see it
happening in the time frame for Atom 1.0. Getting something in an I-D
later for RDF-based interop should benefit the core, even without
tight spec coupling. But don't let's kid ourselves what we have right
now is much more than a syntax and a model with
ArchitectureByImplication [1].

10/10 for the Pace title, btw ;-)

Cheers,
Danny.

[1] http://c2.com/cgi/wiki?ArchitectureByImplication









-- 

http://dannyayers.com



Re: Thinking ahead: Atom Extension Proposals on the Wiki?

2005-02-03 Thread Danny Ayers

On Wed, 02 Feb 2005 20:27:28 -0500, Sam Ruby [EMAIL PROTECTED] wrote:
 
 James Snell wrote:
 I'm just thinking ahead a bit on this, but I am wondering if it would
 be possible for those of us interested in proposing non-core
 extensions to Atom to use the Wiki as the forum for sharing proposals
 for extensions once the core syntax has been finalized?

 Go4it.

Yep, good idea. I can see a few in the intray: ipaddress/host (for
anon posts to Wikis etc); the ENT (Easy News Topics) RSS 2.0 extension
is in the process of being revised, and an Atom-compatible syntax is
planned; Yahoo's media object extension.

A Wiki template would be nice - have you started writing anything up yet, James?

Cheers,
Danny.



-- 

http://dannyayers.com



Re: tagline - subtitle

2005-02-02 Thread Danny Ayers

+1.

Subtitle is less obscure, and as Graham suggests could reasonably
encompass tagline. Summary isn't far away, but subtitle and tagline
are both more suggestive of the kind of half-a-sentence people use in
this position, rather than a paragraph+.



On Wed, 2 Feb 2005 15:37:09 +, Graham [EMAIL PROTECTED] wrote:
 Any chance of renaming atom:tagline to atom:subtitle? The two sample
 feeds posted today have the taglines ongoing fragmented essay by Tim
 Bray and WebDAV related news. Aren't taglines meant to be funny or
 catchy or clever?
 
 The relevant definitions from dictionary.com are:
   tagline: An often repeated phrase associated with an individual,
 organization, or commercial product; a slogan.
   subtitle: A secondary, usually explanatory title, as of a literary
 work.
 
 The second seems much broader and more useful, and there's nothing
 stopping you using a slogan as subtitle.
 
 Graham
 
 


-- 

http://dannyayers.com



Re: Work Queue Rotation #16

2005-02-01 Thread Danny Ayers

On Mon, 31 Jan 2005 11:45:25 -0800, Tim Bray [EMAIL PROTECTED] wrote:
 
 Atom Public Issues List:
 http://www.intertwingly.net/wiki/pie/AtomPubIssuesList

Regarding PaceExtensionConstruct, PaceAttributesNamespace and Henry's
RDF-related proposals, these got Catch-22'd by the process a little.
The chair wanted actual spec text to enable discussion, but the text
as provided (at least for PaceAttributesNamespace) was more aimed at
alpha version 0.001 ballpark-finding than providing something
voteworthy.

I'll try and have something more workqueue-suitable for
PaceAttributesNamespaces in the next few days.
  
The other decisions look good to me  - they all seem to reflect
discussion accurately (although I somehow missed PaceFeedState...).

Cheers,
Danny.

-- 

http://dannyayers.com



Re: atom:host [was: Comments on format-05]

2005-02-01 Thread Danny Ayers

On Sun, 30 Jan 2005 22:51:21 -0500, Joe Gregorio [EMAIL PROTECTED] wrote:

 atom:nameAnonymous (from IP: aaa.bbb.ccc.)/atom:name

Well yes, and there's always:

atom
The title of this feed is The Stuff and the first entry it contains
is titled Hello World from 1st February, and that has the content
...
/atom

What did you end up implementing for the Wiki?

I've no objection to this being dropped from the core in its current
(misleading) form, I think it would probably cause more trouble than
it's worth.

The use case is nice and clear though - this could make an exccellent
extension demo.

Cheers,
Danny.
-- 

http://dannyayers.com



Re: URI canonicalization

2005-02-01 Thread Danny Ayers

On Tue, 01 Feb 2005 10:07:52 +, Bill de hÓra [EMAIL PROTECTED] wrote:

 Otherwise, this thread sounds like resources and representations all
 over with the caveat that entry representations are being sourced from
 multiple origin servers.

It was suggested ages ago that the use of a different URI in id than
the one which would usually provide representations of the entry
resource might be problematic.

There's an extra level of indirection between the identified entry
resource and it's representations (which are in fact also
representations of *other* resources). There doesn't seem to be any
violation of webarch with that per se. But if we decide Cool URIs are
to be considered an exception rather than the norm and use workarounds
to fit with the half-baked 'permalink' practice then confusion is to
be expected.

Cheers,
Danny.


-- 

http://dannyayers.com



Re: URI canonicalization

2005-02-01 Thread Danny Ayers

Nearly forgot -

+1 to including some kind of explanatory note on comparisons, Martin's
version looks better than the current text


-- 

http://dannyayers.com



Re: Dereferencing Identity Constructs

2005-02-01 Thread Danny Ayers

I'm a little confused over what's being proposed or counterproposed
here - I thought consensus last year was to break the Web

Whatever, I do think id URIs should be treated as URIs according to
webarch etc - it should be possible to dereference them, assuming
that's supported by the scheme.

The easiest implementation of a blog feed would be to have the id
referring to the resource entry that has a HTML representation in the
blog. It seems perverse to build a whole new system of Web data
reference around permalinks and assuming unCool URIs.

Cheers,
Danny. 


On Tue, 1 Feb 2005 17:59:51 +0100, Henry Story [EMAIL PROTECTED] wrote:
 
 Ahhh! Here I make the mistake again.
 
 The id relation, relating an Entry and a Identity Construct is
 functional, not inverse
 functional. Hence an Entry can only have one id relation to a URI of
 type identity construct.
 
 But there is a way out of this: if an entry has a number of id
 relations, then one is forced
 to conclude that those identity constructs have the relation same as.
 
 So if one had
 
 entry
 titleAtom Robots run Amok/title
 idhttp://bblfish.net/blog//id
 idtag://bblfish.net/eternalid/for/that/story/id
 ...
 /entry
 
 Then one would be forced to conclude that
 
 http://bblfish.net/blog/ rdf:sameAs
 tag://bblfish.net/eternalid/for/that/story
 
 (wink to advanced rdfers: is that ok?)
 
 for rdf newbies with primary mathematics background consider the
 function
 
 f(x) = x * 25
 
 so f(0) = 0
f(1) = 25
f(2) = 50
 etc.
 
if we are told that
 
 f(a) = 100 and f(a) = 2*50
  then we can conclude that 100 == 2*50
 
 Henry Story
 
 On 31 Jan 2005, at 16:25, Henry Story wrote:
 
  One way to get people to have their cake and eat it too, may be to
  allow multiple id tags.
  Since an id is an inverse functional relationship between an Entry a
  Resource this should
  not cause any trouble. In any case there will never be any way you can
  limit the number of
  names a thing has.
 
  Henry Story
 
 
 


-- 

http://dannyayers.com



Re: Proof-of-concept RDF mapping for Atom

2005-01-30 Thread Danny Ayers

On Sun, 30 Jan 2005 16:05:57 +, Bill de hÓra [EMAIL PROTECTED] wrote:
 
 Robert Sayre wrote:
 
  I think the mapping should be normatively defined w/ XSLT.
 
 +1. I have no problem with defining the mapping in XSLT. Executable
 specs are a wonderful idea.

+1.

There still quite a margin for error but XSLT could very neatly
provide something deterministic, and ties in nicely with GRDDL. The
mapping won't really be complete without an RDF/OWL schema (and
probably not even then, given some of the Atom constructs), I would
expect that to form part of the I-D (or however it's presented).

 Another benefit of XSLT is that it should be pretty easy to hook onto
a Atom/XML validator to pass to the W3C RDF validator.

Cheers,
Danny.
-- 

http://dannyayers.com



Re: Proof-of-concept RDF mapping for Atom

2005-01-29 Thread Danny Ayers

On Fri, 28 Jan 2005 21:27:11 +, David Powell 

 I've put together an XSLT stylesheet to map Atom to RDF/XML. It is
 just as a proof of concept to see if it is possible. I think it
 handles everything except for xml:lang - I'm not sure what's happening
 with xml:lang at the moment - but it should be possible to add it in a
 similar way to xml:base.

Marvellous! 

 I don't think using an XSLT processor followed by an RDF/XML parser
 would be much fun in practise - a SAX based convertor would be much
 simpler.

Hmm, that's actually quite an interesting question...

 The RDF vocabulary was just constructed ad-hoc - like I said, it is
 just a proof of concept.  It uses a separate namespace to Atom and
 defines some new terms, which solves any problems with non-unique
 attributes.

That makes sense. Hopefully it should be possible to narrow down the
terms in a way that they can all coexist in the Atom namespace.

One question - do you have a permanent URI for this?

Cheers,
Danny.

-- 

http://dannyayers.com



Re: PaceAttributesNamespace is *not* about syntax!

2005-01-27 Thread Danny Ayers

On Wed, 26 Jan 2005 21:39:23 -0500, Sam Ruby [EMAIL PROTECTED] wrote:

 PaceAttributeNamespace does not do that.  All it says is is that a given
 namespace may be used.  For what purpose such a statement is made is
 entirely unclear.

Ok, maybe a little more explanation is needed in the Pace. The purpose
is to provide global names to the relations expressed by the
attributes.
 
Global naming leads to global network effects.
http://www.w3.org/TR/2004/REC-webarch-20041215/#identification

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Difference of TEXT and XHTML?

2005-01-27 Thread Danny Ayers

I only noticed this thread after looking at the same material through
RDF-tinted spectacles.

A question for the schema mavens: is there *any* clear way of
describing the difference between the three content types
(TEXT/HTML/XHTML) in a machine readable fashion?

In the Rosy-tinted Description Framework, if the type could be fully
expressed using XML Schema datatypes, the Atom content element could
map nicely onto a XSD-datatyped literal. Problem is I couldn't see any
obvious way of distinguishing HTML from TEXT, as the former would be
escaped anyway.

So in effect for RDF I think the content would have to appear as a
literal, with the type as a kind of annotation, the easiest RDF/XML
version being something like:

atom:contentConstruct
  atom:contentyodel-ay-ey-oo/atom:content
  atom:datatypeTEXT/atom:datatype
/atom:contentConstruct

Cheers,
Danny.

On Thu, 27 Jan 2005 14:48:44 +, Graham [EMAIL PROTECTED] wrote:
 On 27 Jan 2005, at 1:34 pm, Sam Ruby wrote:
 
  http://www.intertwingly.net/wiki/pie/PaceTypeTextRedundant
 
  There are cases where explicit is better than implicit.
 
 Yes. It's more a psychological rather than a technical difference, but
 I think it's important (it's like the difference between ASCII and
 UTF-8).
 
 -1 on the pace.
 
 Graham
 
 (PS Are line breaks in Text mode honored?)
 
 


-- 

http://dannyayers.com



Re: PaceAttributesNamespace is *not* about syntax!

2005-01-27 Thread Danny Ayers

On Thu, 27 Jan 2005 20:49:12 +, Bill de hÓra [EMAIL PROTECTED] wrote:
 
 Danny Ayers wrote:
 
  Yes and no - there is demand for this kind of thing, is the RSS 1.0
  community the same as the RDF community? There's a lot of additions
  around there... Whatever, even with RSS 2.0 there's Easy News Topics
  and all the stuff associated with media (enclosures + Yahoo's
  extensions) as good examples.
 
 Is the RSS1.0 community relevant, given RSS1.1? I'm sincere in asking this.

Dunno really. There are an awful lot of RSS 1.0 feeds out there -
you've got one, I've got one. If rss-dev give the green light to 1.1,
I'll probably changeover before long, though the extensions (FOAF,
Geo) I've got in place aren't likely to change.

  My concern there is with extension development outside of the RDF
  community. Without some uniform interpretation of the attributes
  outside of the context of an Atom document, there's scope for unwanted
  interactions. Assigning the things global names (URIs), even if they
  aren't explicitly expressed in Atom documents seems a low cost
  solution.
 
 
 Does this help?
 
 Yes, but I think it can be dealt with as outlined above, unless I'm
 missing something.
 
 
  Non-RDF extensions.
 
 As I've said, I'm not seeing the demand for uniform evaluation outside
 an RDF context.

Outside of the [insert Brayism about architects], demand for
uniformity is generally thin on the ground around syndication (guids
ring a bell?). But that doesn't reduce its benefits, usually
uniformity leads to a net cost reduction, don't you reckon? Standards
and all that?

Cheers,
Danny.

-- 

http://dannyayers.com



Re: PaceAttributesNamespace status

2005-01-26 Thread Danny Ayers

On Wed, 26 Jan 2005 01:20:58 +, David Powell [EMAIL PROTECTED] wrote:
 
 
  PaceAttributesNamespace
 
 I'm -1 on this. It seems to be authorising a RDF users to do a
 transform on Atom Syntax in order to make it more RDF/XML-like.

That's really orthogonal from the intention.

 If RDF users have to transform the content in order to interpret it as
 RDF/XML (which they do), then they might as well transform it to a
 decent RDF model which properly models the entities and properties
 involved in the feed.  We don't need the format spec to authorize RDF
 users to do this - they can just do it.

True. But that decent RDF model will presumably be based on the
model implicit in the Atom spec. But there are points which can't be
carried from the spec as it stands into the world of resources at
large - the unqualified attributes.

 I don't think that tweaking an Atom document and interpreting it as
 RDF/XML is going to produce a sensible RDF model.

That isn't really the intention, although there's no reason to make
the transformation any more complicated than it needs to be.

 There are also a number of technical problems:
 
  * The attribute namespace prefixing problem solved by this Pace
 
  * atom:author defaulting won't be modelled sensibly
 
  * The xml:lang and xml:base context won't be preserved by Text
constructs and Extensions if they are modelled as RDF XML Literals.[1]
 
  * parseType=Resource / parseType=Literal needs to be assumed in
certain places.

Only the first is covered by this Pace.

 If we try to solve all of these problems, then we are going to have to
 do a fairly complicated transformation that needs to be applied to
 produce a what could end up a quirky sub-optimal model.

This is extrapolating a lot way from the proposal.

 I'd rather us make sure that we have designed the format spec well
 enough that it has a clear model for core elements and extensions.

Yes, exactly.

 Then the RDFers can come up with a clear well-designed RDF vocabulary
 for Atom and a mapping from Atom format to RDF (via XSLT?).

There is a clear mapping of construct *names* from Atom to the RDF
world (the element names have URIs), but the unprefixed attributes
don't have URIs.

 I've just posted this as an informal proposal on the Wiki suggesting
 that we let an RDF mapping should be defined outside of the format
 specification, and that we should avoid making this impossible:
 
 http://intertwingly.net/wiki/pie/MinimalRdfProposal

Interpreting Atom syntax as RDF/XML is not possible without applying
transformations. 

I don't care about Atom syntax as RDF/XML per se, what I'm interested
in is Atom as RDF.

 Atom should define a consistent model for its core elements.

Exactly. What it currently lacks is unambiguous names for the
attributes outside of document instances.

Cheers,
Danny.


-- 

http://dannyayers.com



PaceAttributesNamespace is *not* about syntax!

2005-01-26 Thread Danny Ayers

I've added the following note to the Pace:

A lot of the critical response to this Pace has been based on the
assumption that it is about changes to the Atom syntax. Nothing could
be farther from the truth. Within Atom format it will remain mandatory
that documents are produced with no-namespace attributes. This Pace is
about the model.

Resources on the Web are generally given URIs. With RDF, it has been
found useful to also assign URIs to relations, so they too are
uniformly are uniquely defined. As it stands, most of the constructs
and relations within Atom already have URIs - the element names are
namespace-qualified. This isn't the case for the attributes. By saying
that the no-namespace attributes can be interpreted as having names in
the Atom namespace gives them URIs.

As well as simplifying the RDF model the approach described in this
Pace should also be useful for reusing Atom attributes in extensions.

http://intertwingly.net/wiki/pie/PaceAttributesNamespace

Cheers,
Danny.

-- 

http://dannyayers.com



Re: PaceIRI status

2005-01-26 Thread Danny Ayers

+1 on PaceIRI

I'm a little hesitant on this because I'm not familiar with the
issues, but it's something we'll probably all have to broach sometime
soon. Martin seems to know what he's talking about ;-)

On Wed, 26 Jan 2005 08:54:51 +0100, Julian Reschke
[EMAIL PROTECTED] wrote:
 
 Martin Duerst wrote:
  ...
  Bjoern was making a vaild, but fine, point: Because we decided to
  refer to RFC2396bis, rather than to RFC2396, we already have bought
  into the fact that RFC2396bis allows percent-encoded domain names,
  and thus essentially requires IDN support. (apart from the basic
  fact that no resolver is required to resolve all URIs or IRIs)
  ...
 
 OK, thanks for making me aware of this subtle change.
 
   ...
 
 Regards, Julian
 
 --
 green/bytes GmbH -- http://www.greenbytes.de -- tel:+492512807760
 
 


-- 

http://dannyayers.com



Re: PaceExtensionConstruct status

2005-01-26 Thread Danny Ayers

On Tue, 25 Jan 2005 02:10:28 +, David Powell [EMAIL PROTECTED] wrote:

+1
(allowing room for tweaks)

 I'll try to post my suggested RDF road-map tomorrow - basically, I'd
 like to see:
 
   * an Atom syntax - RDF mapping defined in a separate I-D.
 
   * no changes to the Atom syntax for the sake of RDF.
 
   * a model that maps properly onto the core Atom concepts without
 getting tangled up in the Atom syntax.

Yep. Expect +1s from me for anything along these lines.

An appendix covering RDF compatibility mapping has been suggested. I
would expect that to be brief (and wouldn't object to it being solely
informative), with the bulk of the material appearing in the separate
ID. But right now I'd say the challenge is to get the third item above
sorted.

I believe Henry's got most of an RDF/OWL model worked out - perhaps he
could be persuaded to post it to the Wiki for nitpicking..?

Correct me if I'm wrong  - the tricky bit relating to content
datatypes still needs figuring out, along with a couple of
inconsistencies/weird structures within Atom.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: PaceAttributesNamespace (was Re: AtomAsRDF_PaceAttributesNS)

2005-01-25 Thread Danny Ayers

On Mon, 24 Jan 2005 21:35:37 -0500, Sam Ruby [EMAIL PROTECTED] wrote:
 
 Danny Ayers wrote:
 
  One thing I'm not sure about - where it currently says Atom
  processors, perhaps that would be better as merely Atom consumers.
  For the reasons Sam gave, we don't really want extra variability in
  what's being produced, but this still would still allow RDF-like
  consumers to interpret the feed as an RDF-like language.
  Does that make sense, or is there a case I'm missing here?
 
 I'm still struggling to understand what this is for.  So, let me ramble
 for a few minutes...
 
 Assuming that there will be an XSLT which maps Atom to RDF, such an XSLT
 will have to map all unnamespaced attributes into something with a
 namespace.  The namespace of the element is a reasonable choice.

I'm not sure whether it'll be a good strategy to allow no-namespace
attributes in extensions - extension-creators may want to use terms
from within the Atom namespace in other elements (although I guess
they could use the qualified versions), and
 it also feels like it might complicate handling (if this wasn't
allowed then 'namespace of element' would still be the rule, except
that namespace would always be Atom's).

I realise XSLT/GRDDL is the obvious target for this stuff, but I worry
a little about thinking in terms of a particular processing model. It
would be nice for example if the DTD defaults could be used as a
simple Atom = RDF/XML transformation, although I doubt that's
possible given the namespaced attributes situation (no-namespace
attributes were deprecated in RDF/XML, not sure whether they ever got
banned outright).

 I'm a bit concerned about precedence rules (what happens if there is an
 href attribute *AND* an atom:href attribute?).  What makes most sense
 here is for a prohibition disallowing such in any exension.  I would
 support such a rule.

Yep, that makes sense.

 Finally, I'm a bit concerned about round tripping - i.e., producing
 valid feeds from an RDF triple store.  Given that an unnamespaced
 attribute and a namespaced attribute are two different things - how can
 a valid feed be produced?

Some fairly hardwired coding will be required to constrain the syntax
down to RDF/XML of the right shape anyway, I'm assuming it would only
be a tad more application code to change the attribute namespaces. It
would be a little easier if Atom attributes were always
namespace-qualifie (it would be a lot simpler if Atom were
RDF/XML...).

Cheers,
Danny.


-- 

http://dannyayers.com



Re: PaceAttributesNamespace (was Re: AtomAsRDF_PaceAttributesNS)

2005-01-25 Thread Danny Ayers

On Tue, 25 Jan 2005 04:33:35 +0100, Bjoern Hoehrmann [EMAIL PROTECTED] wrote:
 * Danny Ayers wrote:
 To be inserted:
 {{{
 Section 2.  Atom Documents
 
 Atom processors MAY interpret unprefixed attribute names as their
 namespace-qualified equivalents.
 If they do, then all Atom attribute names MUST appear in the Atom namespace.
 
 }}}
 
 This does not make much sense to me, it is either not possible to write
 a test case for the first requirement in which case this would be an im-
 plementation detail which is out of scope of the specification, or it is
 possible to write such a test case in which case this would render Atom
 inconsistent with a broad range of XML technologies, e.g., for
 
   atom:foo bar=baz /

Sorry, swap in the word 'consumer'. Straight XML applications will see
that exactly as written, languages that require disambiguation of 
'bar' will read it as 'atom:bar'

A test case would be an RDF processor seeing the triples:

_:fooinstance rdf:type atom:foo .
_:fooinstance atom:bar baz .

(assuming atom:foo was a class)

Cheers,
Danny.


-- 

http://dannyayers.com



Re: PaceAttributesNamespace (was Re: AtomAsRDF_PaceAttributesNS)

2005-01-25 Thread Danny Ayers

On Tue, 25 Jan 2005 12:22:24 +0100, Bjoern Hoehrmann [EMAIL PROTECTED] wrote:

 If this implementation detail is exposed to the user, it would seem
 reasonable to consider such a software a Atom-to-something-else con-
 verter; you would thus seem to propose the introduction of conformance
 requirements for Atom conversion programs into the specification. No?

Not necessarily - although I take your point, it does look very
application oriented and probably impossible to test within the scope
of core Atom. But because it is defining the meaning of terms in the
Atom namespace (atom:type will be equivalent to type) I believe this
information should go in the normative part of the core spec.

Cheers,
Danny.

-- 

http://dannyayers.com



PaceAttributesNamespace refactored

2005-01-25 Thread Danny Ayers

I have withdrawn the previous suggestion and replaced it with the text
suggested by Antone. Further adjustments/refinements welcome.

The key idea is anchor the attribute names in the Atom namespace,
reducing ambiguity. I would expect the reduction of ambiguity is
desirable in a spec. This should be useful in practice when Atom is
used alongside any language where terms need to be unambiguously
qualified, such as RDF. It should also simplify the reuse of core
attributes in extensions (again, through ambiguity reduction).

Cheers,
Danny. 



-- 

http://dannyayers.com



Re: AtomOWL AtomAsRDF

2005-01-17 Thread Danny Ayers

On Mon, 17 Jan 2005 23:38:50 +0100, Henry Story [EMAIL PROTECTED] wrote:

 Take for example the following extension proposed recently
 
 entry
idtag://sometag/id
geo:x10.1/geo:x
geo:y57.3/geo:y
...
  /entry
 
 this implies the following rdf graph
 
 _e -entry- _E
 |-id--tag://sometag
 |-geo:x-10.1
 |-geo:y-57.3
 
 which presumably would mean that _E had to be both
 an Entry and a geographical location, 

...or an entry *with* a geographic location (or something completely different).

which is a very
 unintuitive concept, and very likely *not* what the
 extension author intended. It would for example meant
 that this object would be a different object if it had
 a different id.
 
 What he probably intended was either
 
 - That the author was at some particular location, in which case he
 should
   probably have added attributes to the author object, through some foaf
   ontology predicate.
 
 - Or that some event the Entry is about was at some particular
 location. In which
 case this should have gone into the content /content space by using
 an event
 ontology. 

Maybe, but there's always the trade-off between accuracy of modelling
and difficulty of handling the stuff. There's really nothing to stop
the resource identified in id being a geological event with a
geographic location as well as something with a representation in the
content of an entry in an Atom feed. The indirection can be reduced
with the data expressing what the entry is, rather than what it is
about. This example probably works better than most in human terms, as
the entry could be an entry in an event log, though you could end up
with the author of the feed entry being the creator of the
earthquake...

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Feed, know thyself?

2005-01-15 Thread Danny Ayers

On Fri, 14 Jan 2005 15:52:58 -0500, Robert Sayre [EMAIL PROTECTED] wrote:
 Danny Ayers wrote:
 
  Thing is, with the spec as it currently stands, we don't have a link
  from the feed that can be guarenteed to point to the feed URI itself.
 
 That's not a very robust way to accomplish the goal. People tend to use
 cp without thinking about these things. 

Do they? I've done HTTP redirects often enough (had to yesterday,
coincidentally) but don't recall ever having to do anything that would
break a source reference.

The browser vendors will deal
 with it eventually (Safari 2.0 does...) and/or we'll get a playlist type
 thing. That's the only way it will work reliably.

Maybe, but right now the leading browser doesn't deal with it, it's
not clear they even have any motivation to.

Seems to me like making a source-URI reference a SHOULD would help
solve an immediate problem, irrespective of the hypothetical problem
of copying.

Is a Pace needed? (Where is the time???)

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Feed, know thyself?

2005-01-15 Thread Danny Ayers

On Sat, 15 Jan 2005 08:37:47 -0800, Tim Bray [EMAIL PROTECTED] wrote:
 On Jan 15, 2005, at 1:05 AM, Danny Ayers wrote:
 
  Seems to me like making a source-URI reference a SHOULD would help
  solve an immediate problem, irrespective of the hypothetical problem
  of copying.
 
 I see no downside.  There are going to be scenarios where it's not
 reliable, but there are going to be lots where it's useful.
 
  Is a Pace needed?
 
 Yes. -Tim

[expletive deleted]! 
Ok, I'll try and sort it tomorrow. I'm sure extensibility is in good hands...

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Feed, know thyself?

2005-01-15 Thread Danny Ayers

On Sat, 15 Jan 2005 15:15:46 -0500, Robert Sayre [EMAIL PROTECTED] wrote:

  No, this is already possible with RSS 1.0.
 
 Really? How is it done?

My apologies, the RSS 1.0 spec actually says the rss:channel resource is
...either the URL of the homepage being described or a URL where the
RSS file can be found.


-- 

http://dannyayers.com



Feed, know thyself?

2005-01-14 Thread Danny Ayers

I was just in the middle of putting the world to rights regarding feed
discovery/subscription from browsers [1] when something occurred to
me. Correct me if I'm wrong, but isn't one of the solutions for this
to serve the feed with the Atom mime type, which will trigger an
appropriate handler in the browser?

If I remember correctly from previous discussions, there is a little
snag with most browsers only passing the data, not the source URI.
Thing is, with the spec as it currently stands, we don't have a link
from the feed that can be guarenteed to point to the feed URI itself.
Having the handler go back to a HTML page to do autodiscovery seems a
little roundabout. Relevant spec bit pasted below.

Thoughts?

Cheers,
Danny.


4.2.2  atom:link Element

   The atom:link element is a Link construct that conveys a URI
   associated with the feed.  The nature of the relationship is
   determined by the construct's rel attribute.

   atom:head elements MUST contain at least one atom:link element with a
   rel attribute value of alternate.

   atom:head elements MUST NOT contain more than one atom:link element
   with a rel attribute value of alternate that has the same type
   attribute value.

[1] http://danja.typepad.com/uncooked/2005/01/life_the_univer.html


-- 

http://dannyayers.com



Re: Posted PaceExtensionConstruct

2005-01-13 Thread Danny Ayers

On Thu, 13 Jan 2005 08:45:07 +, David Powell [EMAIL PROTECTED] wrote:

I very much like the general approach of this Pace, I reckon it's very
close to what's needed.

If there is some way to lose atom:notation without introducing
ambiguity it would be better (if something is needed, what about
atom:type as used on content - might that be a suitable replacement?)

My feeling is that ideally it should be possible to deterministically
transform Atom+extensions into an abstract model based on entities and
relationships. Whether the target model is traditional E-R, UML, RDF, 
Topic Maps or whatever doesn't matter.

From there it would be easy to see how specific profiles could be
developed, without impacting the core - so Henry's RDF/OWL description
of Atom could appear in an I-D as the RDF Profile of Atom.

I think this could potentially be better than what's found with most
profiling, not requiring additional constraints. There would be a
guarantee that the output of *the* Atom2RDF XSLT would always be valid
RDF/XML if the input was valid Atom(+extensions).

(It would be nice later to have XSLT for Atom2UML, whatever Rational
etc use - XMI? - that could be used to automatically create class
libraries for arbitrary extensions).

Cheers,
Danny.

-- 

http://dannyayers.com



Re: PaceIRI

2005-01-11 Thread Danny Ayers

On Tue, 11 Jan 2005 16:50:56 +0900, Martin Duerst [EMAIL PROTECTED] wrote:

 http://www.intertwingly.net/wiki/pie/PaceIRI

I like it a lot in principle, my only concern is the dependency on an
IDN library (nicely put together Pace, btw). As noted this might be a
problem on small devices, but I would suspect that a proportion of
big-device implementors might be tempted to skip this step (if they're
anything like me, largely through ignorance of IRIs/IDNs in general).
Is there any way of reducing the impact here? Any deployment
experience from other application domains that can be drawn on?

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Regarding Graphs

2005-01-10 Thread Danny Ayers

On Sun, 9 Jan 2005 15:20:56 -0800, Roy T. Fielding [EMAIL PROTECTED] wrote:

  For example:
 
  feed xmlns...
 head
 link href=http://example.org/feed/
  ...
 /head
 entry
idhttp://example.org/entry/id
link rel=related href=http://example.org/feed; /
  ...
 /entry
  /feed
 
  If resources are view as nodes, then http://example.org/feed has two
  parents. The containment tree is violated.
 
 Nonsense.  The containment tree tells us what the tail of the link
 is, not the target of those links.  The information is going to
 have far more relationships just by virtue of the content text,
 and thus the information will be a graph even if the relations
 are not made explicit via links. 

Well yes, that was really what I was trying to say, that there are
more relationships than those expressed by the tree.

Their containment is only a
 very small subset of those relationships and cannot be violated
 by the mere presence of other types of links.

If you restrict the set of entities and relationships under discussion
to those directly involved in containment relationships, then sure,
containment will not be violated.

 The reason this topic came up was because people wanted to
 know how the format is extensible given the implicit relationship
 between feed, entry, and entry elements.  Containment is the only
 answer needed because all other relationships are explicitly
 targeted by a URI.

Other relationships can be targetted by a URI, and this with
containment can be enough to describe all the relationships needed.
But my original point was that it wasn't being made explicit.

 Personally, what I would change in the format is elimination
 of head and make feed a recursive element.  Then there would be
 no doubt as to the hierarchical relations and feed vacuums can
 compose multiple feeds to their heart's delight without changing
 the entries at all.

I think this approach was suggested fairly early on, I'm not sure why
it didn't make it through, possibly the argument that flatter is
simpler (for non-Functional developers). The (recursive) nesting
approach can certainly work well, I've seen striped RDF/XML that looks
like this, even the overstretched OPML (sometimes) works because of
it.

I'm not sure how you'd deal with multiple occurrences of the same
entry/feed in different layers. I suppose they could be referred to
through their URIs.

Cheers,
Danny. 

-- 

http://dannyayers.com



Re: PaceFeedRecursive

2005-01-10 Thread Danny Ayers

On Sun, 9 Jan 2005 16:36:04 -0800, Roy T. Fielding [EMAIL PROTECTED] wrote:

http://www.intertwingly.net/wiki/pie/PaceFeedRecursive

I like it, but seem to remember a similar proposal being rejected - anyone..?

This approach should be pretty straightforward to program against, and
what's more should offer easy processing/data access through
XSLT/XQuery and simple mapping to RDF (essentially using striped
RDF/XML).

The only issue that springs to mind is that a feed could end up with a
huge amount of redundant chars if the same feeds/entries appeared
multiple times in different branches of the hierarchy. A simple
mechanism for substituting a feed/entry with its URI might do, or
alternately an in-document #id kind of cross reference to the first
occurence of the feed entry.

Cheers,
Danny.



-- 

http://dannyayers.com



Re: PaceFeedRecursive

2005-01-10 Thread Danny Ayers

On Mon, 10 Jan 2005 11:49:35 -0500, Bob Wyman [EMAIL PROTECTED] wrote:
 
 Roy T. Fielding wrote:
  a proposal on making the feed element recursive

 The primary arguments against Feed of Feeds have been (my
 apologies if I forgot some...)

Thanks Bob. 

IMHO there are pretty strong counter-arguments to 1-5, but this is trickier:

 6. Concern that Feed of Feeds really doesn't buy you much that
 Head In Entry doesn't already provide in the normal case. 

Ok, I don't think there is any benefit in the normal case (feed ::=
meta, (meta, content)*), but the recursive nesting method makes it
possible to convey information about relationships between feeds. 
Which begs the questions:

How useful are the semantics of one feed containing another?
How desirable is it to convey such information in Atom format?

Cheers,
Danny.

-- 

http://dannyayers.com



Regarding Graphs

2005-01-09 Thread Danny Ayers

There were a couple of points made in recent discussions that might
have been misleading. One was that Atom is a tree. The XML may use
that structure, and in it's simplest form the information being
represented may be tree-shaped, but that isn't necessary  the case.
For example:

feed xmlns...
   head
   link href=http://example.org/feed/
...
   /head  
   entry
  idhttp://example.org/entry/id
  link rel=related href=http://example.org/feed; /   
...
   /entry
/feed

If resources are view as nodes, then http://example.org/feed has two
parents. The containment tree is violated.
 

From one or two other recent posts a casual bystander might have
concluded that it is necessary to know graph theory to use RDF. This
isn't really the case. A similar suggestion has been used in the past
[1,2,3] to imply RDF is harder than it actually is. In that sense,
it's completely unfounded.

All you need to know is that RDF data can be visualized as a node and
arc (edge) graph. The arcs have a direction, i.e. it's a directed
graph. The same information can be represented either as a circle 
arrow kind of diagram, as a list of statements (triples) or in one of
the serialization formats like RDF/XML or the more human-friendly
Turtle.

Viewed as a list of statements, the information in the Atom snippet
above could be expressed something like:

feed hasHref http://example.org/feed
feed hasChild entry
entry hasID http://example.org/entry
entry hasRelated http://example.org/feed

Anyone working on the Web is dealing with graphs all the time. There's
the Web itself, with pages as nodes and links as arcs. Gopher might
have evolved into the World Wide Tree, but didn't. Trees are a
constrained subset of graphs, so they can be assimilated in a hugely
interconnected environment like the Web (resistance is futile!).

Anyone programming is likely to be using considerably more complex
graphs than what's usually found in RDF. The relationships between
entities in, say, the Java class libraries can get very twisty. (You
can use similar visualization, using something like UML).

This isn't to suggest that the containment tree of XML isn't useful,
far from it. It's a very good fit for most documents we have to deal
with, and a considerable amount of data. Other data can be more
table-shaped, which can be done in XML but the syntax starts to look a
little strained. But many real-world data structures (like the Web)
don't fall neatly into trees or tables, and the more general graph can
be useful. XML can be used effectively for serialization formats,
pretty much irrespective of the data structure. But the syntax may get
ugly if the data model is too far removed from Tree.

Generally the graph data structure is our friend, and should be
welcomed with open arms (or angle brackets).

Cheers,
Danny.

[1] http://static.userland.com/userLandDiscussArchive/msg007482.html
[2] http://www.xent.com/aug00/0371.html
[3] http://archive.scripting.com/2004/07/16

-- 

http://dannyayers.com



Re: Regarding Graphs

2005-01-09 Thread Danny Ayers

On Sun, 9 Jan 2005 10:59:01 -0800, S. Mike Dierken [EMAIL PROTECTED] wrote:
 
  feed xmlns...
 head
 link href=http://example.org/feed/
  ...
 /head
 entry
idhttp://example.org/entry/id
link rel=related href=http://example.org/feed; /
  ...
 /entry
  /feed
 
  If resources are view as nodes, then http://example.org/feed has two
  parents. The containment tree is violated.
 
 I'm pretty sure the discussion was related to the content of a single XML
 document instance, rather than to resources distributed across a network.
 Once a piece of software traverses outside of an XML document instance, it
 is no longer containment.

How about something like:

feed xmlns...
...
   entry
  idhttp://example.org/entryA/id
  link rel=next href=http://example.org/entryB; /
...
   /entry
   entry
  idhttp://example.org/entryB/id
  link rel=previous href=http://example.org/entryA; /
...
   /entry
/feed

Cheers,
Danny.

-- 

http://dannyayers.com



Re: RSS extensibility

2005-01-08 Thread Danny Ayers

On Fri, 7 Jan 2005 16:39:41 -0700, Antone Roundy [EMAIL PROTECTED] wrote:
 
 On Friday, January 7, 2005, at 03:53  PM, Danny Ayers wrote:
  On Fri, 7 Jan 2005 14:21:49 -0700, Antone Roundy
  [EMAIL PROTECTED] wrote:
  Could you give an example of something useful that a real world
  application would be enabled to do?
 
  Off the top of my head, how about categorizing entries by their
  properties.
 
 I don't understand.  Could I get some example XML, and if the XML
 doesn't make it obvious, an explanation of how RDF makes this possible
 where it's not possible lacking RDF?

Say your system is aggregating material from two sensors, and you get
the following, one from each:

entry
  idhttp://123/id
  date2005-02-02/date
  geo:x10.1/geo:x
  geo:y57.3/geo:y
/entry

entry
  idhttp://123/id
  date2005-02-03/date
  seismo:magnitude7/seismo:magnitude
/entry

It isn't clear how these should be merged - does the entry with the
later date replace the earlier one? The (presumably) desired behaviour
is for the geo+seismo properties all to appear as elements under
(properties of) the entry. Mapping syntax to a model can help decide
what to do  *in the general case* rather than per-extension. As it
happens, RSS/RDF would only go part of the way with something like
this - you'd get the desired merged entry, but with two dates.

  But being able to mix extensions in a predictable fashion is generally
  nice to have. Last time I looked my own RSS 1.0 feed was using terms
  from 9 namespaces (mostly through the FOAF output plugin). I could
  merge with lots of other peoples RSS 1.0 feeds and be sure all the
  same information would still be available. If it wasn't mapped to a
  common model (through the structure) I wouldn't even know how to
  merge.
 
 Again, I don't understand.  When you talk of merging feeds, do you mean
 making a feed out of entries from separate feeds (but where the entries
 themselves are not altered), or merging the entries themselves, where
 sometimes the feeds contain different instances of the same entries,
 resulting in entries containing more data than exists in any one feed?
 Either way, what information might become unavailable in the process?
 Maybe once I understand the foregoing, I'll also understand mapped to
 a common model (through the structure).

There is a predictable way of being able to combine *any* two RDF/XML
documents,  whatever vocabularies are used. XML alone doesn't provide
this.

  It's also one less job (per extension) for every single developer
  that
  wishes to support extensions. This particular part of their code
  would
  only have to be written once.
 
  Off the top of my head, I can't imagine how this would impact the
  amount of code required in an application.  Could you elaborate?
 
  Ok, say x,y come from one extension (geo) and magnitude another
  (seismo). The client receives something like this:
 
  entry
 geo:x10.1/geo:x
 geo:y57.3/geo:y
 seismo:magnitude7/seismo:magnitude
  /entry
 
  a bit of code could pick these values up with characters[] in SAX or a
  text node in DOM or whatever XOM sees, but the thing is both geo and
  seismo are following the same structure
 
  but if geo and seismo did things a little differently:
 
  entry
 geo:coords x=10.1 y=57.3 /
 e:magnitude7/e:magnitude
  /entry
 
  a bit of code could pick the magnitude value up as before, but the
  coords would need different handling - SAX would have to go poking in
  attributes, DOM would need a getAttribute(), XOM would - ok, I've no
  idea, but I expect something different.
 
 Let me see if I've got this right: you're saying that by standardizing
 on putting data in element content vs. in attributes, the code would
 only have to support getting values from element content, and not have
 to bother with getting attributes?  Having typed that sentence, it
 seems I must be missing something, because the following pseudocode
 snippets seem only trivially different to me:
 
 geox = GetElementContent(/geo:x);
 geoy = GetElementContent(/geo:y);
 magnitude = GetElementContent(/seismo:magnitude);
 
 geox = GetAttribute(/geo:coords/@x);
 geox = GetAttribute(/geo:coords/@y);
 magnitude = GetElementContent(/seismo:magnitude);

Yes, trivially different, two extra lines of code. Potentially for
every developer, for every extension.

 I'm assuming the client knows something about the geo and seismo
 extensions--otherwise, I can't imagine what the client would be doing
 with the extension elements anyway (beyond ignoring it, storing it in
 an unknown extension table, or passing it through to some other
 application).

The 'what to do with unknown extensions' question is something that
makes a lot more sense if you have commited to the full RDF model. For
example, your system might have a piece of data stored:

entry
...
   xxx:wibbleJohn Smith/xxx:wibble
/entry

You might later pick up the statement:

xxx:wibble
   owl:sameAs rdf:resource=http://purl.org/atom/ns#contributor

Re: RSS extensibility

2005-01-08 Thread Danny Ayers

On Sat, 8 Jan 2005 12:00:19 +, David Powell [EMAIL PROTECTED] wrote:

 Its a tradeoff between flexibility
 and complexity.

Indeed. There was recently some coverage on-list about using a richer
model (in RDF), specifically to preserve provenance.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: RSS extensibility

2005-01-08 Thread Danny Ayers

On Sat, 8 Jan 2005 13:48:47 -0800, Roy T. Fielding [EMAIL PROTECTED] wrote:
 On Jan 8, 2005, at 2:21 AM, Danny Ayers wrote:
  Perhaps I wasn't clear enough. XML has containment. Individual
  specifications may assign it semantics. RDF/XML assigns it semantics
  corresponding to the RDF model. Without either the individual
  specification's definition, or a generalised interpretation like
  RDF/XML's all you have is syntax featuring containment.
 
 No, you were clear, it was just that your statement is false.
 Element containment is a semantic that almost all XML data formats obey.
 In fact, the only one I know of that doesn't is RDF/XML.  No other
 format needs to assign those semantics to XML.
 
  But XML containment can only express tree structures. To express graph
  structures, the containment must somehow be violated. RDF is a graph.
 
 And Atom feed is a tree.  If we try to express tree structures with a
 graph language, we create complexity that would not exist with a tree
 language because a tree already has constraints built-in.  The extra
 constraints that RDF needs in order to dig itself out of its own hole
 are not necessary for languages that avoid the hole in the first place.
 
  I do hope that folks understand that the relationship should be
  obvious to anyone who does not
  work in a language that is as perversely non-mark-up as RDF/XML.
 
  Well there you have it - it is possible to design XML languages that
  are perverse. So we can't rely on everyone following the 'obvious'
  relationship pattern. Making it explicit should help prevent
  misinterpretation.
 
 On the contrary, we can safely ignore languages that are perverse
 in their use of XML because those languages will have to define
 their own islands of semantics which are self-contained and
 irrelevant to their surroundings.  Other languages do not have
 to understand the non-containment semantics of rdf:Description
 because those semantics are defined by RDF/XML regardless of
 what other language it may be embedded within.

Earlier you said:
[[
While I don't see any reason not to make XML's mark-up relations
explicit in the specification, I do hope that folks understand that
the relationship should be obvious to anyone who does not work in a
language that is as perversely non-mark-up as RDF/XML.
]]

While I disagree with some of the other points you have made (probably
none of the facts, more the general focus), I believe the first part
of this sentence is the issue that most directly affects Atom, and on
that I agree.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Atom extensibility, RDF, and GRDDL

2005-01-08 Thread Danny Ayers

On Sun, 09 Jan 2005 00:18:37 +, Bill de hÓra [EMAIL PROTECTED] wrote:

 Look, the point is this. Those arguing from the RDF side of the house do [not]
 mean what you mean by extensible. Furthermore, what is meant there by
 extensible hasn't been demonstrated (in my mind) as a requirement for
 Atom. Thus, in some respects we're having a pointless discussion. One
 side or the other is going to have to give up possession of the term
 extensible, or we're going to continue to watch people talk past each
 other. Once you appreciate that we are talking about two different
 things, execution of the work in hand will become simpler.

I'd be more than happy to use a different term for the
XML-extensibility-like thing which isn't modularity or robustness but
closer to the dictionary definition. Extendibility perhaps?

Cheers,
Danny.

-- 

http://dannyayers.com



Re: RSS extensibility

2005-01-07 Thread Danny Ayers

On Fri, 7 Jan 2005 14:21:49 -0700, Antone Roundy [EMAIL PROTECTED] wrote:

 Could you give an example of something useful that a real world
 application would be enabled to do?

Off the top of my head, how about categorizing entries by their properties. 
But being able to mix extensions in a predictable fashion is generally
nice to have. Last time I looked my own RSS 1.0 feed was using terms
from 9 namespaces (mostly through the FOAF output plugin). I could
merge with lots of other peoples RSS 1.0 feeds and be sure all the
same information would still be available. If it wasn't mapped to a
common model (through the structure) I wouldn't even know how to
merge.

  Ok, now what if the Atom spec said that all child elements of entry
  are to be considered to be characteristics of that entry, with the
  value of those characteristics being given by the content of the
  child.
 
 Just for clarification, would that preclude things like the following,
 where the child element of entry has child elements?
 
 entry
 ...
 ext:image
 ext:urlhttp://www.x.com/img.jpeg/ext:url
 ext:height30/ext:height
 ext:width40/ext:width
 /ext:image
 /entry

I would expect this to be possible, but the details need to be worked
out (i.e. does the parent-child relationship thing go all the way
down? - I'd expect not).

  It's also one less job (per extension) for every single developer that
  wishes to support extensions. This particular part of their code would
  only have to be written once.
 
 Off the top of my head, I can't imagine how this would impact the
 amount of code required in an application.  Could you elaborate?

Ok, say x,y come from one extension (geo) and magnitude another
(seismo). The client receives something like this:

entry
   geo:x10.1/geo:x
   geo:y57.3/geo:y
   seismo:magnitude7/seismo:magnitude
/entry

a bit of code could pick these values up with characters[] in SAX or a
text node in DOM or whatever XOM sees, but the thing is both geo and
seismo are following the same structure

but if geo and seismo did things a little differently:

entry
   geo:coords x=10.1 y=57.3 /
   e:magnitude7/e:magnitude
/entry

a bit of code could pick the magnitude value up as before, but the
coords would need different handling - SAX would have to go poking in
attributes, DOM would need a getAttribute(), XOM would - ok, I've no
idea, but I expect something different.

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Role of RSS in Science Publishing

2004-12-16 Thread Danny Ayers

On Thu, 16 Dec 2004 16:07:11 +, Graham [EMAIL PROTECTED] wrote:
 On 16 Dec 2004, at 1:53 pm, Danny Ayers wrote:
 
  What if they receive multiple, non-identical versions of the same
  entry from different sources?
  Admittedly there isn't a conflict resolution defined for core RSS 1.0
  components, e.g. where only a single value is mandated, but for
  extensions (which we are talking about here) the RDF model is clear
  (there is no conflict).
 
 Well you have 2 (or 3) choices:
 1. Use the newer entry
 2. a) Mix all the elements in one entry container
 or b) as a), but remove duplicately named elements.
 
 Option 1 requires app-specific knowledge, which RDF can't help you
 with. Neither 2a or 2b will necessarily produce valid results, but
 again, I'm not aware of a feature in RDF that will help.

What helps in RDF is that according to the model, there is no such
ambiguity at the common language level - there are no choices. This
provides independence, orthogonality between the message-passing and
the application-level interpretation.

For example, say the following came from sourceA:

item
   xx:seasonSpring/xx:season
/item

the following from sourceB:

item
   xx:seasonSummer/xx:season
/item

assuming both items have the same id (however expressed), everything
else removed for clarity

The RDF interpretation would be two statements, which could be wrapped
back up into pseudo-RSS as:

item
   xx:seasonSpring/xx:season
   xx:seasonSummer/xx:season
/item

The RDF/XML interpretation mechanism provides clear communication of
data within a known data model. It's an unambiguous message in this
model. What the application does with it is another matter - it's a
different layer. But without such a mechanism, the choices are back
down at the level of XML syntax, there isn't even a domain-specific
grammar to draw on.

 (also please don't use the word receive, we request things around
 here)

I'd suggest this all occurs above the wire protocol, but ok, I'll try not to ;-)

Cheers,
Danny.


-- 

http://dannyayers.com



Re: Yahoo and Media RSS

2004-12-16 Thread Danny Ayers

On Thu, 16 Dec 2004 20:40:27 +, Graham [EMAIL PROTECTED] wrote:
 On 16 Dec 2004, at 8:12 pm, Danny Ayers wrote:
 
  xx:thing yy:another=elsewhere /
 
  Where would you expect to the semantics of yy:another to be defined?
 
 In the yy document, though possibly also in the xx document.

Ok, that would be my reading too.

 Un-namespaced attributes are a different thing and a special case. Its
 best to think of them as belonging to a special namespace:element
 psuedo-namespace (ie the qname is namespace:element:attr), though
 officially they belong to none at all. 

I accept they're special case, but best to think of them doesn't
help much in implementations - according to that SAX trace I posted,
the Yahoo attributes are in the same namespace ('') as the core RSS
2.0 elements.

The RSS 2.0 spec says:
A RSS feed may contain elements not described on this page, only if
those elements are defined in a namespace.
but is (as far as I can see) silent on attributes, so perhaps the
Yahoo material is perfectly valid, as well as constructs like:

item number=123
...

Special case, as I said. It's
 all in that errata document.

Where? I can't find anything that covers this case. 

Cheers,
Danny.




-- 

http://dannyayers.com



Re: Yahoo and Media RSS

2004-12-16 Thread Danny Ayers

On Thu, 16 Dec 2004 18:23:53 -0500, Sam Ruby [EMAIL PROTECTED] wrote:

 Inferring that attributes which are in an explicit namespace are the
 same might be reasonable.  But inferring that attributes which are not
 in a namespace are the same because they happen to be spelled the same
 may produce false positives.

I'm a little tired right now so might be missing something obvious,
but if you accept this latter point, then why shouldn't you also
accept the same interpretation for element names - i.e.

item /
and
item /

may not actually be the same..?

Cheers,
Danny.

-- 

http://dannyayers.com



Re: Priorities in Atom?

2004-12-08 Thread Danny Ayers

On Wed, 8 Dec 2004 04:35:48 -0500, Bob Wyman [EMAIL PROTECTED] wrote:

 Most of these things could be quite nicely handled by a simple
 tag/value structure. Something like:
 
 prop name=LinkRank333/prop
 prop name=BSValue$33.03/prop
 prop name=classificationpolitics/prop
 prop name=priorityvery_high/prop

They could be handled this way, but as it stands there isn't any way
of recognising the properties in an unambiguous fashion. I don't think
a centralized registry is the answer either. But if there was a simple
generalized interpretation of material from other namespaces, we can
remove ambiguity and use the XML more like, errm, XML:
e.g. 

entry ...
pubsub:LinkRank333/pubsub:LinkRank
...
/entry

The spec could contain words to the effect that elements like this
SHOULD be interpreted as a named property of  the enclosing entry, the
value being the child text node. The use of namespaces will avoid
clashes, so this won't be interpreted as the same thing as
google:PageRank333/google:PageRank.

 Let's focus on the mechanism for communicating properties rather
 then the specific properties that are to be communicated.

Yes please. I'd favour something like Robert's PacePropertyDesign
(which would probably find it's way to consensus without the RDF
references).

Cheers,
Danny.


-- 

http://dannyayers.com



Re: PaceFeedState server-side proof-of-concept implementation

2004-11-24 Thread Danny Ayers

I need to think some more about the idea of multiple feeds as static
files, it does seem to be moving away from It's the Entries, though
I can't actually see any real problem with that: It's the Entries =
the packaging don't matter.

Now then...

 FYI, I've put 'this' and 'prev' elements on my RSS feed as a
 proof-of-concept on the server side; see
http://www.mnot.net/blog/index.rdf

...ok, proven at server side, now what might a client do with the
data? (As it's RSS, something driven by Sparql queries might perhaps
make a good demo..?)

Cheers,
Danny.


-- 

http://dannyayers.com



Re: Work Queue Rotation #13

2004-11-23 Thread Danny Ayers

On Tue, 23 Nov 2004 09:39:50 -0500, Robert Sayre [EMAIL PROTECTED] wrote:
 Danny Ayers wrote:
 
 
  I appreciate Rob's effort to try and get some usable wording, but to
  me the suggested version (pasted below) seems too far removed from the
  world of resources and HTTP, also overly prescriptive. I don't think
  it needs a Pace, but does need revisiting.
 
 Too far removed from a requirement that isn't present, vague, and yet
 still overly precriptive. I've really accomplished something here.
 
 However, I find your objection insufficiently detailed. Show us a use
 case and a problem with the language in concrete terms.

A Link construct is an empty element that describes a connection from
an Atom document to another Web resource. 

Ok. Why not just leave it at that. 
Let me try to disambiguate the next bit to show why I don't think it works -

When a link is activated, User Agents are expected to visit the
linked resource, rather than
apply metadata such as schema or styling information as is common in
HTML dialects.
=
 The User Agent will present the user with some form of interface
component corresponding to the link construct through which they may
interact (such as a hyperlink or button). The User Agent is expected
to respond to interactions with that component by applying a HTTP GET
to the resource identified by the URI and somehow processing the
returned data. The construct should not be interpreted as a
declarative statement of a relation between the Atom document and the
identified resource, nor should the data returned by the GET be used
for validation or display styling purposes.

Why not just take the first sentence, and leave it to the definition
of the 'rel' to explain the nature of the connection? What's wrong
with purely declarative (non-hyperlink) connections?

If a hyperlink really *is* all that's intended, then why not just say
something like: the link element describes a hyperlink which the
User Agent is expected to treat link a HTML anchor tag, providing HTTP
access to the identified resource.

Cheers,
Danny.

-- 

http://dannyayers.com