In Atom, we can provide published and updated information. In RSS, there is only pubDate, for the publication date, but an update can be mentioned with the dc:modified element (whose datetime format is iso 8601). This patch updates :) inline.pm and the two relevant templates.

I tested a slightly modified patch, which I've put below for now. feedvalidator.org complains that dc:modified is not a known element. I'll bet some header needs to be added to make the dublin core stuff available. The atom feeds seem ok. --Joey

Index: debian/changelog
===================================================================
--- debian/changelog    (revision 4066)
+++ debian/changelog    (working copy)
@@ -15,8 +15,11 @@
   * Updated French translation from Cyril Brulebois. Closes: #437181
   * The toc directive doesn't work well or make sense inside an inlined page.
     Disable it when the page with the toc is nested inside another page.
+  * Apply a patch from NicolasLimare adding modification date tags to rss and
+    atom feeds, and also changing the publication time for a feed to the
+    newest modiciation time (was newest creation time).

- -- Joey Hess   Sat, 11 Aug 2007 17:40:45 -0400
+ -- Joey Hess   Sat, 11 Aug 2007 18:25:28 -0400

 ikiwiki (2.5) unstable; urgency=low

Index: templates/atomitem.tmpl
===================================================================
--- templates/atomitem.tmpl (revision 4066)
+++ templates/atomitem.tmpl (working copy)
@@ -11,7 +11,8 @@
    
    
    
-   
+   
+   
    
    
    
Index: templates/rssitem.tmpl
===================================================================
--- templates/rssitem.tmpl  (revision 4066)
+++ templates/rssitem.tmpl  (working copy)
@@ -12,7 +12,8 @@
    
    
    
-   
+   
+   
    
    
    
Index: IkiWiki/Plugin/inline.pm
===================================================================
--- IkiWiki/Plugin/inline.pm    (revision 4066)
+++ IkiWiki/Plugin/inline.pm    (working copy)
@@ -361,8 +361,10 @@
            title => pagetitle(basename($p)),
            url => $u,
            permalink => $u,
-           date_822 => date_822($pagectime{$p}),
-           date_3339 => date_3339($pagectime{$p}),
+           cdate_822 => date_822($pagectime{$p}),
+           mdate_822 => date_822($pagemtime{$p}),
+           cdate_3339 => date_3339($pagectime{$p}),
+           mdate_3339 => date_3339($pagemtime{$p}),
        );

        if ($itemtemplate->query(name => "enclosure")) {
@@ -397,7 +399,7 @@
        $content.=$itemtemplate->output;
        $itemtemplate->clear_params;

-       $lasttime = $pagectime{$p} if $pagectime{$p} > $lasttime;
+       $lasttime = $pagemtime{$p} if $pagemtime{$p} > $lasttime;
    }

    my $template=template($feedtype."page.tmpl", blind_cache => 1);

Yes I noticedthe bug today; the correct (tested on feedvalidator) rssitem.tmpl template must start with the following content:

<item>
    <TMPL_IF NAME="AUTHOR">                                                    
    <title><TMPL_VAR AUTHOR ESCAPE=HTML>: <TMPL_VAR TITLE></title>             
    <dcterms:creator><TMPL_VAR AUTHOR ESCAPE=HTML></dcterms:creator>           
    <TMPL_ELSE>                                                                
    <title><TMPL_VAR TITLE></title>                                            
    </TMPL_IF>                                                                 
    <dcterms:modified><TMPL_VAR MDATE_3339></dcterms:modified>                 
    <dcterms:created><TMPL_VAR DATE_3339></dcterms:created>                    
    ....

and rsspage.tmpl must start with:

<?xml version="1.0"?>                                                              
<rss version="2.0"                                                                 
     xmlns:dc="http://purl.org/dc/elements/1.1/"                                   
     xmlns:dcterms="http://purl.org/dc/terms/" >        
     ....

NicolasLimare

done --Joey