--- MoinMoin/formatter/text_xml.py.orig	2005-12-01 20:30:07.000000000 -0500
+++ MoinMoin/formatter/text_xml.py	2006-01-12 14:27:20.000000000 -0500
@@ -77,12 +77,12 @@
         return '<attachmentdrawing href="%s">%s</attachmentdrawing>' % (
             url, text)
 
-    def text(self, text):
+    def text(self, text, **kw):
         if self.in_pre:
             return text.replace(']]>', ']]>]]&gt;<![CDATA[')
         return self._escape(text)
 
-    def rule(self, size=0):
+    def rule(self, size=0, **kw):
         return "\n<br/>%s<br/>\n" % ("-"*78,) # <hr/> not supported in stylebook
         if size:
             return '<hr size="%d"/>\n' % (size,)
@@ -92,21 +92,21 @@
     def icon(self, type):
         return '<icon type="%s" />' % type            
 
-    def strong(self, on):
+    def strong(self, on, **kw):
         return ['<strong>', '</strong>'][not on]
 
-    def emphasis(self, on):
+    def emphasis(self, on, **kw):
         return ['<em>', '</em>'][not on]
 
-    def highlight(self, on):
+    def highlight(self, on, **kw):
         return ['<strong>', '</strong>'][not on]
 
-    def number_list(self, on, type=None, start=None):
+    def number_list(self, on, type=None, start=None, **kw):
         result = ''
         if self.in_p: result = self.paragraph(0)
         return result + ['<ol>', '</ol>\n'][not on]
 
-    def bullet_list(self, on):
+    def bullet_list(self, on, **kw):
         result = ''
         if self.in_p: result = self.paragraph(0)
         return result + ['<ul>', '</ul>\n'][not on]
@@ -117,22 +117,22 @@
     def code(self, on, **kw):
         return ['<code>', '</code>'][not on]
 
-    def sup(self, on):
+    def sup(self, on, **kw):
         return ['<sup>', '</sup>'][not on]
 
-    def sub(self, on):
+    def sub(self, on, **kw):
         return ['<sub>', '</sub>'][not on]
 
-    def strike(self, on):
+    def strike(self, on, **kw):
         return ['<strike>', '</strike>'][not on]
 
-    def preformatted(self, on):
+    def preformatted(self, on, **kw):
         FormatterBase.preformatted(self, on)
         result = ''
         if self.in_p: result = self.paragraph(0)
         return result + ['<source><![CDATA[', ']]></source>'][not on]
 
-    def paragraph(self, on):
+    def paragraph(self, on, **kw):
         FormatterBase.paragraph(self, on)
         return ['<p>', '</p>\n'][not on]
 
@@ -160,41 +160,42 @@
 
         return result + '<s%d%s title="' % (depth, id_text)
 
-    def table(self, on, attrs={}):
+    def table(self, on, attrs={}, **kw):
         return ['<table>', '</table>'][not on]
 
-    def table_row(self, on, attrs={}):
+    def table_row(self, on, attrs={}, **kw):
         return ['<tr>', '</tr>'][not on]
 
-    def table_cell(self, on, attrs={}):
+    def table_cell(self, on, attrs={}, **kw):
         return ['<td>', '</td>'][not on]
 
     def anchordef(self, id):
         return '<anchor id="%s"/>' % id
 
-    def anchorlink(self, on, name='', id=None):
+    def anchorlink(self, on, name='', **kw):
+        id = kw.get('id',None)
         extra = ''
         if id:
             extra = ' id="%s"' % id
         return ('<link anchor="%s"%s>' % (name, extra) ,'</link>') [not on]
 
-    def underline(self, on):
+    def underline(self, on, **kw):
         return self.strong(on) # no underline in StyleBook
 
-    def definition_list(self, on):
+    def definition_list(self, on, **kw):
         result = ''
         if self.in_p: result = self.paragraph(0)
         return result + ['<gloss>', '</gloss>'][not on]
 
-    def definition_term(self, on, compact=0):
+    def definition_term(self, on, compact=0, **kw):
         return ['<label>', '</label>'][not on]
 
-    def definition_desc(self, on):
+    def definition_desc(self, on, **kw):
         return ['<item>', '</item>'][not on]
 
-    def image(self, **kw):
+    def image(self, src=None, **kw):
         valid_attrs = ['src', 'width', 'height', 'alt']
-        attrs = {}
+        attrs = {'src':src}
         for key, value in kw.items():
             if key in valid_attrs:
                 attrs[key] = value
