<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Lyle Troxell: Building GeekSpeak.org, Part II</title>
    <link>http://lyle.troxell.com/pen/articles/2006/08/09/building-geekspeak-org-part-ii</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Web Development, Radio and Geekery</description>
    <item>
      <title>Building GeekSpeak.org, Part II</title>
      <description>&lt;h3&gt;Editing &lt;span class="caps"&gt;XML&lt;/span&gt; is Hard&amp;#8230; mText&lt;/h3&gt;


	&lt;p&gt;In &lt;a href="/pen/articles/2006/02/12/building-geekspeak-org-part-i"&gt;part one of Building GeekSpeak.org&lt;/a&gt; I explained that we have a content management system that uses a layer of &lt;span class="caps"&gt;XML&lt;/span&gt;. But hand editing &lt;span class="caps"&gt;XML&lt;/span&gt; is a pain. &lt;span class="caps"&gt;HTML&lt;/span&gt;, generally a form of &lt;span class="caps"&gt;XML&lt;/span&gt;, is also kinda difficult to edit by hand, that&amp;#8217;s why the blog world has adopted markup. A comon form of this sort of markup, which I use in this blog, is &lt;a href="http://hobix.com/textile/"&gt;Textile&lt;/a&gt;. Generally this allows a user to use a simple text format that is translated to html. Miles Elam whipped out some Java and made mText, a markup that transforms to our SimpleDoc xml format.&lt;/p&gt;


	&lt;h4&gt;mText Examples&lt;/h4&gt;


	&lt;p&gt;mText uses brackets ([]) and other sudo-standard markup formatting to define elements. Currently there are some bugs in the code, but all of this does work, and translate to our simple doc format.&lt;/p&gt;


Images
&lt;pre&gt;
[myimage.jpg]
[myimage.jpg|Caption text]
&lt;/pre&gt;
Links
&lt;pre&gt;
[Link Text|http://geekspeak.org/]
&lt;/pre&gt;
Acronyms
&lt;pre&gt;
[TLA|Three Letter Acronym]
&lt;/pre&gt;
Sections
&lt;pre&gt;
! Section title
!! Subsection title
! Back to top Level
&lt;/pre&gt;
Orderd List
&lt;pre&gt;
#! Title
# list item 1
# list item 2
# list item 3
&lt;/pre&gt;
Unordered List
&lt;pre&gt;
*! Title
* list item 1
* list item 2
* list item 3
&lt;/pre&gt;

	&lt;p&gt;Here is &lt;a href="http://lyle.troxell.com/pen/files/example.xml"&gt;an example of the xml generated by the above mText&lt;/a&gt;. This example was created using cocoon and mText. All of the sections that are siblings of articleinfo in this example where generated by the above mText and the mText java parser.&lt;/p&gt;


	&lt;h4&gt;Why Not Textile&lt;/h4&gt;


	&lt;p&gt;Textile and all the other markup systems translate the text markup to &lt;span class="caps"&gt;HTML&lt;/span&gt;, but we have a system that requires us to use a more symantic markup, Simple Doc &lt;span class="caps"&gt;XML&lt;/span&gt;. So Miles had to create mText. It&amp;#8217;s a fine solution, the only problem is that he is the sole developer and it has become stale. Right now fixing the mText Java component is high on our GeekSpeak Web Davelopment needs.&lt;/p&gt;


	&lt;h4&gt;Coccon and Rails&lt;/h4&gt;


	&lt;p&gt;A few months ago I launched a tool built on Ruby on Rails that allows the Geeks of GeekSpeak to modifiy the &lt;a href="http://geekspeak.org/"&gt;GeekSpeak website&lt;/a&gt;. Currently it only allows the users to add shows; I made show editing first becuase that&amp;#8217;s what I do the most. The long and the short of this beta version being up is that I do not have to edit xml documents all the time.&lt;/p&gt;


Here is a general breakdown of our system:
	&lt;ul&gt;
	&lt;li&gt;RubyOnRails app edits the content in the database&lt;/li&gt;
		&lt;li&gt;PostgreSQL database holds our content&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://cocoon.apache.org/"&gt;Coccon&lt;/a&gt; on &lt;a href="http://tomcat.apache.org/"&gt;Tomcat&lt;/a&gt; using &lt;span class="caps"&gt;XSLT&lt;/span&gt; and mText renders html from the database contnet to create &lt;a href="http://geekspeak.org"&gt;GeekSpeak.org&lt;/a&gt;.&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;Currently only the show pages (including homepage) is served from the database, but I am working on it.&lt;/p&gt;</description>
      <pubDate>Wed, 09 Aug 2006 01:07:00 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:19e9b324-b35b-4648-8f31-574706c1d225</guid>
      <author>Lyle Troxell</author>
      <link>http://lyle.troxell.com/pen/articles/2006/08/09/building-geekspeak-org-part-ii</link>
      <category>Web Development</category>
      <category>GeekSpeak</category>
      <category>xml</category>
      <category>markup</category>
      <enclosure length="" url="http://lyle.troxell.com/pen/files/example.xml" type="text/xml"/>
      <trackback:ping>http://lyle.troxell.com/pen/articles/trackback/28</trackback:ping>
    </item>
  </channel>
</rss>
