<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://php.apsique.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Php y otras yerbas - YASX: Otro XML para sitios - Comentarios</title>
 <link>http://php.apsique.com/contenido/yasx_otro_xml_sitios</link>
 <description>Comentarios para &quot;YASX: Otro XML para sitios&quot;</description>
 <language>es</language>
<item>
 <title>YASX: Otro XML para sitios</title>
 <link>http://php.apsique.com/contenido/yasx_otro_xml_sitios</link>
 <description>&lt;p&gt;Mientras miraba mi viejo &lt;a href=&#039;http://www.tikiwiki.org&#039;&gt;tikiwiki&lt;/a&gt; de &lt;a href=&#039;http://www.apsique.com&#039;&gt;apsique&lt;/a&gt;, mi sitio de psicología, aprovechaba de sacarme los pocos pelos que me quedaban, pensando como pasar los más de 70 artículos y 100 páginas a &lt;a href=&#039;http://www.drupal.org&#039;&gt;Drupal&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Claro, hacer un par de querys no es tan difícil, pero lo complicado es mantener la coherencia de los sistemas de categorías, referencias a usuarios y a otras páginas a lo largo de todo el sistema. Entonces, se me ocurrió que no sería tan feo que existiera un sistema de almacenamiento de información específico para sitios tipos CMS. Y no, no estoy hablando de &lt;a href=&#039;http://es.wikipedia.org/wiki/Resource_Description_Framework&#039;&gt;RDF&lt;/a&gt;, aunque lo podría utilizar en parte.&lt;/p&gt;
&lt;p&gt;Lo primero sería definir las clases básicas de un sitio CMS clásico. Yo diría que, de entrada, habría que tener lo relacionado a ontología (Vocabulario, Categorías, Términos), probablemente como un derivado de OPML, Usuarios, Página en relación 1-N a Revisión, Foros (posiblemente con Páginas dentro) y Comentarios. Cada uno de estos elementos correspondería a un elemento en XML, con una serie de atributos que en algunos CMS tendrían sentido, en tanto que en otros sería desechados. &lt;/p&gt;
&lt;p&gt;Un aspecto importante de la especificación tendría relación con como cada CMS debería manejar la importación y exportación de datos. Lo interesante sería que el sistema registrase, al importar, de que sitio realizó la incorporación de datos, para que en caso de reimportar información, no se creen datos duplicados, sino que sólo se actualice la información relevante.&lt;/p&gt;
&lt;p&gt;Como ejemplo de xml, tendríamos algo como:&lt;/p&gt;
&lt;div class=&#039;code&#039;&gt;&lt;div class=&quot;hl-main&quot;&gt;&lt;ol class=&quot;hl-main&quot;&gt;&lt;li&gt;&amp;nbsp;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;?&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;xml&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;version&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;site&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;url&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;http://php.apsique.com&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;user&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;user_1&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;login&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;clbustos&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;password_plain&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;PASSWORD&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;email&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;clbustos@no_espam_apsique.com&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;onthology&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;vocabulary&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;voc_1&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;Lenguajes de programacion&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;term&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;item_1&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;PHP&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;term&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;vocabulary&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;onthology&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;contents&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;page&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;page_1&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;revision&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;page_1_revision_1&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;created&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;2007-01-01&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;Mi primera página&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;body&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;format&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;html&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-comment&quot;&gt;&amp;lt;![CDATA[&lt;/span&gt;&lt;span class=&quot;hl-comment&quot;&gt;&amp;lt;p&amp;gt;Contenido&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-comment&quot;&gt;]]&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;body&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;body&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt; &lt;/span&gt;&lt;span class=&quot;hl-var&quot;&gt;format&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-string&quot;&gt;tikiwiki&lt;/span&gt;&lt;span class=&quot;hl-quotes&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-comment&quot;&gt;&amp;lt;![CDATA[&lt;/span&gt;&lt;span class=&quot;hl-comment&quot;&gt;**Contenido**&lt;/span&gt;&lt;span class=&quot;hl-comment&quot;&gt;]]&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;body&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;revision&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;comments&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;comments&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;page&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;contents&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;hl-code&quot;&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span class=&quot;hl-reserved&quot;&gt;site&lt;/span&gt;&lt;span class=&quot;hl-brackets&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Con este código, el sistema podría crear un nuevo usuario (si es que no existe todavía), un vocabulario y una categoría, una página ya sea en html o en wiki y una serie de comentarios, en cualquier CMS. Si bien no tendría el poder de un transformador especializado, permitiría agilizar mucho el testo de distintos CMS, ya que bastaría importar un subconjunto de los contenidos del sitio para tener una apreciación más realista de la funcionalidad del nuevo sistema.&lt;/p&gt;</description>
 <comments>http://php.apsique.com/contenido/yasx_otro_xml_sitios#comments</comments>
 <category domain="http://php.apsique.com/categoria/temas_generales/disgresiones_informaticas">Disgresiones informáticas</category>
 <category domain="http://php.apsique.com/categoria/temas_generales/gran_red">La gran Red</category>
 <category domain="http://php.apsique.com/categoria/temas_generales/programacion">Programación</category>
 <category domain="http://php.apsique.com/lenguajes/xml">XML</category>
 <pubDate>Fri, 13 Jul 2007 22:47:49 -0700</pubDate>
 <dc:creator>clbustos</dc:creator>
 <guid isPermaLink="false">596 at http://php.apsique.com</guid>
</item>
</channel>
</rss>
