<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>初心者のためのLAMP + Ajax入門</title>
	<link>http://bluedb.org/ajax</link>
	<description>Linux Apache MySQL PHP Ajax そしていろいろ</description>
	<pubDate>Mon, 10 Dec 2007 19:57:14 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3</generator>
	<language>en</language>
			<item>
		<title>mysqlでUTF8でのデータベースの作り方</title>
		<link>http://bluedb.org/ajax/archives/26</link>
		<comments>http://bluedb.org/ajax/archives/26#comments</comments>
		<pubDate>Mon, 10 Dec 2007 19:57:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[misc]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/26</guid>
		<description><![CDATA[
CREATE DATABASE データベース CHARACTER SET utf8 COLLATE utf8_bin;

で作成可能です。CHARACTER SETとかやら無くても大丈夫なときはありますが、設定に依存するので直接指定しちゃった方が安全です。
]]></description>
			<content:encoded><![CDATA[<pre><code>
CREATE DATABASE データベース CHARACTER SET utf8 COLLATE utf8_bin;
</code></pre>
<p>で作成可能です。CHARACTER SETとかやら無くても大丈夫なときはありますが、設定に依存するので直接指定しちゃった方が安全です。</p>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/26/feed</wfw:commentRss>
		</item>
		<item>
		<title>画面関連のイベントハンドラの登録方法</title>
		<link>http://bluedb.org/ajax/archives/25</link>
		<comments>http://bluedb.org/ajax/archives/25#comments</comments>
		<pubDate>Sat, 01 Dec 2007 14:56:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Ajax]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/25</guid>
		<description><![CDATA[prototype.jsのEventを使って画面をクリックしたりロードされたときのイベントの登録方法です。
クリックなどはdocumentエレメントを使います。

Event.observe(document, 'click', funcTest, false);

ページ読み込み時はwindowを使います。

Event.observe(window, 'load', funcTest, false);

]]></description>
			<content:encoded><![CDATA[<p>prototype.jsのEventを使って画面をクリックしたりロードされたときのイベントの登録方法です。</p>
<p>クリックなどはdocumentエレメントを使います。</p>
<pre><code>
Event.observe(document, 'click', funcTest, false);
</code></pre>
<p>ページ読み込み時はwindowを使います。</p>
<pre><code>
Event.observe(window, 'load', funcTest, false);
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/25/feed</wfw:commentRss>
		</item>
		<item>
		<title>prototype.jsでイベントハンドラを登録</title>
		<link>http://bluedb.org/ajax/archives/24</link>
		<comments>http://bluedb.org/ajax/archives/24#comments</comments>
		<pubDate>Fri, 26 Oct 2007 01:54:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Ajax]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/24</guid>
		<description><![CDATA[prototype.jsのEvent.observeを用いることでブラウザ非依存にイベントハンドラを登録することができます。
書式
Event.observe(element, name, observer, useCapture);

element
エレメントかID
name
イベントの名前。load、click、blur、focusなどなど
observer
関数の名前。イベントが発火したら呼び出される
useCapture
trueにするとイベントハンドラを処理し終わったらブラウザに処理が戻らない

サンプル
ページが読み込まれたら関数page_loaded()を実行。

Event.observe(window, 'load', page_loaded, false);

id=&#8221;button_id&#8221;のボタンがクリックされたら関数button_clicked()を実行。

Event.observe("button_id", 'click', button_clicked, false);

画面サイズが変更されたら関数window_changed()を実行

Event.observe(window, 'resize', window_changed, false);

]]></description>
			<content:encoded><![CDATA[<p>prototype.jsのEvent.observeを用いることでブラウザ非依存にイベントハンドラを登録することができます。</p>
<h3>書式</h3>
<p>Event.observe(element, name, observer, useCapture);</p>
<dl>
<dt>element</dt>
<dd>エレメントかID</dd>
<dt>name</dt>
<dd>イベントの名前。load、click、blur、focusなどなど</dd>
<dt>observer</dt>
<dd>関数の名前。イベントが発火したら呼び出される</dd>
<dt>useCapture</dt>
<dd>trueにするとイベントハンドラを処理し終わったらブラウザに処理が戻らない</dd>
</dl>
<h3>サンプル</h3>
<p>ページが読み込まれたら関数page_loaded()を実行。</p>
<pre><code>
Event.observe(window, 'load', page_loaded, false);
</code></pre>
<p>id=&#8221;button_id&#8221;のボタンがクリックされたら関数button_clicked()を実行。</p>
<pre><code>
Event.observe("button_id", 'click', button_clicked, false);
</code></pre>
<p>画面サイズが変更されたら関数window_changed()を実行</p>
<pre><code>
Event.observe(window, 'resize', window_changed, false);
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/24/feed</wfw:commentRss>
		</item>
		<item>
		<title>ブラウザ非依存に画面サイズ（ウィンドウサイズ）を取得する</title>
		<link>http://bluedb.org/ajax/archives/23</link>
		<comments>http://bluedb.org/ajax/archives/23#comments</comments>
		<pubDate>Fri, 26 Oct 2007 01:41:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/23</guid>
		<description><![CDATA[ブラウザの画面サイズを取得したいとき、ブラウザのJavascriptの非互換性が問題になります。でも下記のコードを使えばブラウザに関係なくブラウザの画面サイズが取得できます。
幅は

function getWindowWidth(){
    if(window.innerWidth){
        return window.innerWidth;
    }else if(document.documentElement &#38;&#38; document.documentElement.clientWidth){
        return document.documentElement.clientWidth;
    }else if ( document.body &#38;&#38; document.body.clientWidth){
        return document.body.clientWidth;
    }
}

高さは

function getWindowHeight(){
  [...]]]></description>
			<content:encoded><![CDATA[<p>ブラウザの画面サイズを取得したいとき、ブラウザのJavascriptの非互換性が問題になります。でも下記のコードを使えばブラウザに関係なくブラウザの画面サイズが取得できます。</p>
<p>幅は</p>
<pre><code>
function getWindowWidth(){
    if(window.innerWidth){
        return window.innerWidth;
    }else if(document.documentElement &amp;&amp; document.documentElement.clientWidth){
        return document.documentElement.clientWidth;
    }else if ( document.body &amp;&amp; document.body.clientWidth){
        return document.body.clientWidth;
    }
}
</code></pre>
<p>高さは</p>
<pre><code>
function getWindowHeight(){
    if(window.innerHeight){
        return window.innerHeight;
    }else if(document.documentElement &amp;&amp; document.documentElement.clientHeight){
        return document.documentElement.clientHeight;
    }else if ( document.body &amp;&amp; document.body.clientHeight){
        return document.body.clientHeight;
    }
}
</code></pre>
<p>で取得できます。</p>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/23/feed</wfw:commentRss>
		</item>
		<item>
		<title>HTMLから直接jsファイルを読み込む方法 - javascript</title>
		<link>http://bluedb.org/ajax/archives/22</link>
		<comments>http://bluedb.org/ajax/archives/22#comments</comments>
		<pubDate>Fri, 26 Oct 2007 01:28:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/22</guid>
		<description><![CDATA[&#60;script&#62;タグのsrcで指定します。

&#60;script charset="utf-8" type="text/javascript" src="/js/prototype.js"&#62; &#60;/script&#62;

これを使えばHTMLのどの場所からでもjsを読み込むことができます。
]]></description>
			<content:encoded><![CDATA[<p>&lt;script&gt;タグのsrcで指定します。</p>
<pre><code>
&lt;script charset="utf-8" type="text/javascript" src="/js/prototype.js"&gt; &lt;/script&gt;
</code></pre>
<p>これを使えばHTMLのどの場所からでもjsを読み込むことができます。</p>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/22/feed</wfw:commentRss>
		</item>
		<item>
		<title>HTMLにJavascriptを直接書く方法</title>
		<link>http://bluedb.org/ajax/archives/21</link>
		<comments>http://bluedb.org/ajax/archives/21#comments</comments>
		<pubDate>Fri, 26 Oct 2007 01:22:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/21</guid>
		<description><![CDATA[個人的には実際にページで行う処理はjsファイルには書かず、HTMLに直接書いたほうがいいと思っています。なぜならその方がソースコードにすぐにアクセスできて便利だからです。jsファイルには関数だけ書く、というのがいいのではないでしょうか。
というわけでHTMLにJavascriptを直接書く方法です。&#60;script&#62;タグで囲みます。

&#60;SCRIPT TYPE="text/javascript"&#62;
&#60;!--
ここに処理を書く
//--&#62;
&#60;/SCRIPT&#62;

]]></description>
			<content:encoded><![CDATA[<p>個人的には実際にページで行う処理はjsファイルには書かず、HTMLに直接書いたほうがいいと思っています。なぜならその方がソースコードにすぐにアクセスできて便利だからです。jsファイルには関数だけ書く、というのがいいのではないでしょうか。</p>
<p>というわけでHTMLにJavascriptを直接書く方法です。&lt;script&gt;タグで囲みます。</p>
<pre><code>
&lt;SCRIPT TYPE="text/javascript"&gt;
&lt;!--
ここに処理を書く
//--&gt;
&lt;/SCRIPT&gt;
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/21/feed</wfw:commentRss>
		</item>
		<item>
		<title>prototype.jsでinput radioの値を取得、設定</title>
		<link>http://bluedb.org/ajax/archives/19</link>
		<comments>http://bluedb.org/ajax/archives/19#comments</comments>
		<pubDate>Thu, 18 Oct 2007 13:01:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Ajax]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/19</guid>
		<description><![CDATA[A型
B型
O型
AB型

&#60;input type="radio" name="bd" value="A"&#62;A型
&#60;input type="radio" name="bd" value="B"&#62;B型
&#60;input type="radio" name="bd" value="O"&#62;O型
&#60;input type="radio" name="bd" value="AB"&#62;AB型

やってみて分かったのですがinput radioの値の取得、設定に役に立つような関数はprototype.jsは持っていませんでした。なので$N()という関数を作成してみました。
[prototype.jsを拡張] name属性から配列を生成する関数$N()
$N()を使ってinput radioの値を取得したり設定したりします。
値の取得

var elms = $N('bd');
var strName = "";

for(i = 0; i &#60; elms.length; i++){
    if(elms[i].checked){
        strName = elms[i].value;
    }
}

これでstrNameにはA、B、O、ABのいずれかが入ります。
値の設定
同じく$N()を使います。

var elms = $N('bd');

elms[3].checked = true;

上のHTMLだとAB型のradioボタンが選択されます。
]]></description>
			<content:encoded><![CDATA[<input type="radio" name="bd" value="A">A型<br />
<input type="radio" name="bd" value="B">B型<br />
<input type="radio" name="bd" value="O">O型<br />
<input type="radio" name="bd" value="AB">AB型</p>
<pre><code>
&lt;input type="radio" name="bd" value="A"&gt;A型
&lt;input type="radio" name="bd" value="B"&gt;B型
&lt;input type="radio" name="bd" value="O"&gt;O型
&lt;input type="radio" name="bd" value="AB"&gt;AB型
</code></pre>
<p>やってみて分かったのですがinput radioの値の取得、設定に役に立つような関数はprototype.jsは持っていませんでした。なので$N()という関数を作成してみました。</p>
<p><a href="http://bluedb.org/ajax/archives/20">[prototype.jsを拡張] name属性から配列を生成する関数$N()</a></p>
<p>$N()を使ってinput radioの値を取得したり設定したりします。</p>
<h3>値の取得</h3>
<pre><code>
var elms = $N('bd');
var strName = "";

for(i = 0; i &lt; elms.length; i++){
    if(elms[i].checked){
        strName = elms[i].value;
    }
}
</code></pre>
<p>これでstrNameにはA、B、O、ABのいずれかが入ります。</p>
<h3>値の設定</h3>
<p>同じく$N()を使います。</p>
<pre><code>
var elms = $N('bd');

elms[3].checked = true;
</code></pre>
<p>上のHTMLだとAB型のradioボタンが選択されます。</p>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/19/feed</wfw:commentRss>
		</item>
		<item>
		<title>[prototype.jsを拡張] name属性から配列を生成する関数$N()</title>
		<link>http://bluedb.org/ajax/archives/20</link>
		<comments>http://bluedb.org/ajax/archives/20#comments</comments>
		<pubDate>Thu, 18 Oct 2007 12:49:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/20</guid>
		<description><![CDATA[javascriptでinput radioの値を取得するコードを書いていたときに「エレガントに書けないなぁ」と思い立って作った関数です。まずソースコードを示します。

function $N(element) {
  var elms = document.getElementsByName(element);

  elmArray = Array();

  for(i = 0; i &#60; elms.length; i++){
    elmArray.push(Element.extend(elms.item(i)));
  }

  return elmArray;
}

これはdocument.getElementsByNameを使って任意のnameを持つエレメントの配列を返す関数です。例えば


A型
B型
O型
AB型

&#60;input type="radio" name="bd" value="A"&#62;A型
&#60;input type="radio" name="bd" value="B"&#62;B型
&#60;input type="radio" name="bd" value="O"&#62;O型
&#60;input type="radio" name="bd" value="AB"&#62;AB型

というHTMLがあったとします。$N()はこのようなradioボタンからname属性を使って配列を生成します。

elmArray = $N('bd');

で、こんな感じで使います。

var elms = $N('bd');

for(i = 0; i &#60; elms.length; i++){
   [...]]]></description>
			<content:encoded><![CDATA[<p>javascriptでinput radioの値を取得するコードを書いていたときに「エレガントに書けないなぁ」と思い立って作った関数です。まずソースコードを示します。</p>
<pre><code>
function $N(element) {
  var elms = document.getElementsByName(element);

  elmArray = Array();

  for(i = 0; i &lt; elms.length; i++){
    elmArray.push(Element.extend(elms.item(i)));
  }

  return elmArray;
}
</code></pre>
<p>これはdocument.getElementsByNameを使って任意のnameを持つエレメントの配列を返す関数です。例えば</p>
<blockquote><p>
</p>
<input type="radio" name="bd" value="A">A型<br />
<input type="radio" name="bd" value="B">B型<br />
<input type="radio" name="bd" value="O">O型<br />
<input type="radio" name="bd" value="AB">AB型</p></blockquote>
<pre><code>
&lt;input type="radio" name="bd" value="A"&gt;A型
&lt;input type="radio" name="bd" value="B"&gt;B型
&lt;input type="radio" name="bd" value="O"&gt;O型
&lt;input type="radio" name="bd" value="AB"&gt;AB型
</code></pre>
<p>というHTMLがあったとします。$N()はこのようなradioボタンからname属性を使って配列を生成します。</p>
<pre><code>
elmArray = $N('bd');
</code></pre>
<p>で、こんな感じで使います。</p>
<pre><code>
var elms = $N('bd');

for(i = 0; i &lt; elms.length; i++){
    if(elms[i].checked){
        alert(elms[i].value);
    }
}
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/20/feed</wfw:commentRss>
		</item>
		<item>
		<title>prototype.jsでselectの値を取得、設定</title>
		<link>http://bluedb.org/ajax/archives/18</link>
		<comments>http://bluedb.org/ajax/archives/18#comments</comments>
		<pubDate>Thu, 18 Oct 2007 02:29:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Ajax]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/18</guid>
		<description><![CDATA[
テスト
ペスト
ネスト
レスト


&#60;select id="select_id&#62;
&#60;option value="テスト"&#62;テスト&#60;/option&#62;
&#60;option value="ペスト"&#62;ペスト&#60;/option&#62;
&#60;option value="ネスト"&#62;ネスト&#60;/option&#62;
&#60;option value="レスト"&#62;レスト&#60;/option&#62;
&#60;/select&#62;

値の取得
selectでは、

var strName = $F(&#8217;select_id&#8217;);

と

var strName = $(&#8217;select_id&#8217;).value;

は問題なく動きます。また、

var strName = $(&#8217;select_id&#8217;).getAttribute(&#8217;value&#8217;);

はIEでは動くのですがfirefoxでは動かないので避けた方がいいです。
当然といえば当然なのですが

strName = $(&#8217;select_id&#8217;).innerHTML;

は全く動作しません。
値の設定
値の設定では

$(&#8217;select_id&#8217;).value = &#8220;テスト&#8221;;

だけが正しく動作します。値の設定には.valueを使うのが良さそうです。

$(&#8217;select_id&#8217;).setAttribute(&#8217;value&#8217;,&#8221;テスト&#8221;);

はIEでは動作するのですがfirefoxでは動作しません。
当然ながら

$(&#8217;select_id&#8217;).innerHTML = &#8220;テスト&#8221;;

は動作しません。
]]></description>
			<content:encoded><![CDATA[<select id="select_id">
<option value="テスト">テスト</option><br />
<option value="ペスト">ペスト</option><br />
<option value="ネスト">ネスト</option><br />
<option value="レスト">レスト</option><br />
</select>
<pre><code>
&lt;select id="select_id&gt;
&lt;option value="テスト"&gt;テスト&lt;/option&gt;
&lt;option value="ペスト"&gt;ペスト&lt;/option&gt;
&lt;option value="ネスト"&gt;ネスト&lt;/option&gt;
&lt;option value="レスト"&gt;レスト&lt;/option&gt;
&lt;/select&gt;
</code></pre>
<h3>値の取得</h3>
<p>selectでは、</p>
<blockquote><p>
var strName = $F(&#8217;select_id&#8217;);
</p></blockquote>
<p>と</p>
<blockquote><p>
var strName = $(&#8217;select_id&#8217;).value;
</p></blockquote>
<p>は問題なく動きます。また、</p>
<blockquote><p>
var strName = $(&#8217;select_id&#8217;).getAttribute(&#8217;value&#8217;);
</p></blockquote>
<p>はIEでは動くのですがfirefoxでは動かないので避けた方がいいです。</p>
<p>当然といえば当然なのですが</p>
<blockquote><p>
strName = $(&#8217;select_id&#8217;).innerHTML;
</p></blockquote>
<p>は全く動作しません。</p>
<h3>値の設定</h3>
<p>値の設定では</p>
<blockquote><p>
$(&#8217;select_id&#8217;).value = &#8220;テスト&#8221;;
</p></blockquote>
<p>だけが正しく動作します。値の設定には.valueを使うのが良さそうです。</p>
<blockquote><p>
$(&#8217;select_id&#8217;).setAttribute(&#8217;value&#8217;,&#8221;テスト&#8221;);
</p></blockquote>
<p>はIEでは動作するのですがfirefoxでは動作しません。</p>
<p>当然ながら</p>
<blockquote><p>
$(&#8217;select_id&#8217;).innerHTML = &#8220;テスト&#8221;;
</p></blockquote>
<p>は動作しません。</p>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/18/feed</wfw:commentRss>
		</item>
		<item>
		<title>prototype.jsでinput type=textの値を取得、設定</title>
		<link>http://bluedb.org/ajax/archives/17</link>
		<comments>http://bluedb.org/ajax/archives/17#comments</comments>
		<pubDate>Thu, 18 Oct 2007 02:17:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Ajax]]></category>

		<guid isPermaLink="false">http://bluedb.org/ajax/archives/17</guid>
		<description><![CDATA[

&#60;input type="text" size="20" id="input_id" value="テスト"&#62;

値の取得
input type=&#8221;text&#8221;では、

var strName = $F(&#8217;input_id&#8217;);

と

var strName = $(&#8217;input_id&#8217;).value;

は問題なく動きます。また、

var strName = $(&#8217;input_id&#8217;).getAttribute(&#8217;value&#8217;);

も動くのですが、これはtextareaの時に使えないので避けた方がいいです。
当然といえば当然なのですが

strName = $(&#8217;input_id&#8217;).innerHTML;

は全く動作しません。
値の設定
かなり意外なのですが値の設定では

$(&#8217;input_id&#8217;).value = &#8220;テスト&#8221;;

だけが正しく動作します。値の設定には.valueを使うのが良さそうです。

$(&#8217;input_id&#8217;).setAttribute(&#8217;value&#8217;,&#8221;テスト&#8221;);

はIEでは動作するのですがfirefoxでは動作しません。
当然ながら

$(&#8217;input_id&#8217;).innerHTML = &#8220;テスト&#8221;;

は動作しません。
]]></description>
			<content:encoded><![CDATA[<input type="text" size="20" id="input_id" value="テスト">
<pre><code>
&lt;input type="text" size="20" id="input_id" value="テスト"&gt;
</code></pre>
<h3>値の取得</h3>
<p>input type=&#8221;text&#8221;では、</p>
<blockquote><p>
var strName = $F(&#8217;input_id&#8217;);
</p></blockquote>
<p>と</p>
<blockquote><p>
var strName = $(&#8217;input_id&#8217;).value;
</p></blockquote>
<p>は問題なく動きます。また、</p>
<blockquote><p>
var strName = $(&#8217;input_id&#8217;).getAttribute(&#8217;value&#8217;);
</p></blockquote>
<p>も動くのですが、これはtextareaの時に使えないので避けた方がいいです。</p>
<p>当然といえば当然なのですが</p>
<blockquote><p>
strName = $(&#8217;input_id&#8217;).innerHTML;
</p></blockquote>
<p>は全く動作しません。</p>
<h3>値の設定</h3>
<p>かなり意外なのですが値の設定では</p>
<blockquote><p>
$(&#8217;input_id&#8217;).value = &#8220;テスト&#8221;;
</p></blockquote>
<p>だけが正しく動作します。値の設定には.valueを使うのが良さそうです。</p>
<blockquote><p>
$(&#8217;input_id&#8217;).setAttribute(&#8217;value&#8217;,&#8221;テスト&#8221;);
</p></blockquote>
<p>はIEでは動作するのですがfirefoxでは動作しません。</p>
<p>当然ながら</p>
<blockquote><p>
$(&#8217;input_id&#8217;).innerHTML = &#8220;テスト&#8221;;
</p></blockquote>
<p>は動作しません。</p>
]]></content:encoded>
			<wfw:commentRss>http://bluedb.org/ajax/archives/17/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
