Index: docs/ref/contrib/syndication.txt
===================================================================
--- docs/ref/contrib/syndication.txt	(revision 16164)
+++ docs/ref/contrib/syndication.txt	(working copy)
@@ -268,8 +268,11 @@
 --------
 
 Feeds created by the syndication framework automatically include the
-appropriate ``<language>`` tag (RSS 2.0) or ``xml:lang`` attribute (Atom). This
-comes directly from your :setting:`LANGUAGE_CODE` setting.
+appropriate ``<language>`` tag (RSS 2.0) or ``xml:lang`` attribute (Atom). You 
+can set the language for a feed by specifying an attribute :attr:`language`, 
+using the same format as the project-wide setting :setting:`LANGUAGE_CODE`. If  
+you don't specify a language, it comes directly from your  
+:setting:`LANGUAGE_CODE` setting. 
 
 URLs
 ----
Index: django/contrib/syndication/views.py
===================================================================
--- django/contrib/syndication/views.py	(revision 16164)
+++ django/contrib/syndication/views.py	(working copy)
@@ -104,7 +104,7 @@
             subtitle = self.__get_dynamic_attr('subtitle', obj),
             link = link,
             description = self.__get_dynamic_attr('description', obj),
-            language = settings.LANGUAGE_CODE.decode(),
+            language = self.__get_dynamic_attr('language', obj, settings.LANGUAGE_CODE.decode()),
             feed_url = add_domain(
                 current_site.domain,
                 self.__get_dynamic_attr('feed_url', obj) or request.path,
Index: tests/regressiontests/syndication/tests.py
===================================================================
--- tests/regressiontests/syndication/tests.py	(revision 16164)
+++ tests/regressiontests/syndication/tests.py	(working copy)
@@ -7,6 +7,7 @@
 from django.test import TestCase
 from django.utils import tzinfo
 from django.utils.feedgenerator import rfc2822_date, rfc3339_date
+from django.conf import settings 
 
 from models import Entry
 
@@ -226,6 +227,16 @@
         updated = doc.getElementsByTagName('updated')[0].firstChild.wholeText
         self.assertEqual(updated[-6:], '+00:42')
 
+    def test_language_code(self): 
+        """ 
+        Test that language code is set via dynamic parameter. 
+        """ 
+        response = self.client.get('/syndication/language/') 
+        feed = minidom.parseString(response.content).firstChild 
+        self.assertEqual(feed.getElementsByTagName('language')[0].firstChild.wholeText, 'tl') 
+        #Make sure that it's not because Tagalog is set in settings already 
+        self.assertNotEqual(settings.LANGUAGE_CODE.decode(), 'tl') 
+
     def test_feed_url(self):
         """
         Test that the feed_url can be overridden.
Index: tests/regressiontests/syndication/urls.py
===================================================================
--- tests/regressiontests/syndication/urls.py	(revision 16164)
+++ tests/regressiontests/syndication/urls.py	(working copy)
@@ -13,4 +13,5 @@
     (r'^syndication/feedurl/$', feeds.TestFeedUrlFeed()),
     (r'^syndication/articles/$', feeds.ArticlesFeed()),
     (r'^syndication/template/$', feeds.TemplateFeed()),
+    (r'^syndication/language/$', feeds.LanguageFeed()), 
 )
Index: tests/regressiontests/syndication/feeds.py
===================================================================
--- tests/regressiontests/syndication/feeds.py	(revision 16164)
+++ tests/regressiontests/syndication/feeds.py	(working copy)
@@ -91,6 +91,8 @@
         # settings.TIME_ZONE.
         return item.date.replace(tzinfo=tzinfo.FixedOffset(42))
 
+class LanguageFeed(TestRss2Feed): 
+    language = 'tl'
 
 class TestFeedUrlFeed(TestAtomFeed):
     feed_url = 'http://example.com/customfeedurl/'
