<?xml version="1.0" encoding="utf-8"?> 
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
     version="2.0">

    <channel>
        <title>Berehulyak - Plone</title>
        <link>http://berehulyak.com/blog/plone</link>
        <description>Blog entries related to Plone CMS topic.</description>
        <language>en-us</language>
        <generator>Plone CMS</generator>
        

        

        
            
                  <item>
                      <title>Plone on Content Technology Vendor map 2008</title>
                      <link>http://berehulyak.com/blog/plone/cmswatch-vendor-map</link>
                      <description></description>
                      
                      
                      <pubDate>Thu, 13 Mar 2008 10:31:53 -0500</pubDate>
                      
     
        <category>Plone</category>
             
        <content:encoded><![CDATA[
<p><a href="http://www.cmswatch.com/">CMSWatch</a> published Content Technology Vendor map on their website.</p>
<p>
<a href="http://www.cmswatch.com/images/CMS-Watch-Subway-2008-large.jpg"><img src="http://www.cmswatch.com/images/CMS-Watch-Subway-2008-small.jpg" alt="Content Technology Vendor map" /></a></p>
<p>
Map includes all content management vendors from CMS Report. You can see Plone, Drupal, Vignette, etc.
If you like the subway map representation technique, you may also be interested in <a href="http://informationarchitects.jp/">iA's Web Trend Map</a>.</p>
 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/plone"
                      rel="tag">Plone</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Plone, SEO and international calls.</title>
                      <link>http://berehulyak.com/blog/plone/seo</link>
                      <description></description>
                      
                      
                      <pubDate>Thu, 27 Jul 2006 10:36:25 -0500</pubDate>
                      
     
        <category>CMS</category>
     
     
        <category>Plone</category>
     
     
        <category>Plone SEO</category>
     
     
        <category>SEO</category>
             
        <content:encoded><![CDATA[
<p>Some time ago I and <a href="http://www.enterpriseblogs.info/blog" target="_self">Olena
Zavorotnia</a> optimized a html of new <a href="/technology/plone" target="_self">Plone</a> based website <a href="http://www.sauti.co.uk/" target="_self">Sauti, 
Business Phone Services</a>. Sauti
Corporate Telephony Solution Provider offers cheap
international phone calls from UK mobile or
landline network, fax services, conference
calls, competition
lines, votelines, switchboard plans, and
personal numbers.</p>
<p><a href="http://www.sauti.co.uk/" target="_self">Sauti</a>
wasn't developed by
Quintagroup, so it was better for me to realize the situation with
usual Plone based sites.</p>
<blockquote>
<p>Note: December 2006. The owner of Sauti.co.uk desided to switch from Plone to OsCommerce. In some cases stable shopping cart solution is better for clients then good CMS.</p>
<p>Second Note: December 2007. Customer decided switch back to Plone, but website archive was damaged :-(<br /></p>
</blockquote>
<h2>Plone is the best CMS for SEO</h2>
<p>I can say with confidence that <a href="/technology/plone" target="_self">Plone</a> is the best CMS for SEO. <br /></p>
<ul>
  <li>It has very nice  search engine friendly URLs
feature. You can create the pages with any desirable URLs like <code>http://my-plone-site/keyword1-keyword2/keywords3/keyword4.keyword5/keyword6.php.asp.html</code><br />
It can be done in very usable way, it is as simple as adding Title.</li>
  <li>Default Plone generates great internal links with
navigation portlet, breadcrumbs and sitemap.</li>
  <li>Any site structure may be implemented<br />
  </li>
  <li>HTML includes a lot of whitespace, but it is very clean.
Usually Plone skins include tableless layout, so you have not much
redundant html code in the source.<br />
  </li></ul>
<h3>Tools which can be used for Plone SEO.<br /></h3>
<ul>
  <li><a href="http://quintagroup.com/services/plone-development/products/qSEOptimizer" target="_self">Plone SEO (qSEOptimizer)</a> allows per
document editing of Title tag and META tags.</li>
  <li><a href="http://quintagroup.com/services/plone-development/products/google-sitemaps" target="_self">Plone Google Sitemaps (qPloneGoogleSitemaps)</a>
allows Plone websites to get better visibility for Google search engine
by providing it with complete listing of URLs to website content.</li>
  <li>The <a href="http://plone.org/products/redirectiontool/" target="_self">Redirection Tool</a> can be used for
storing references to moved content to enable redirects. It is very
useful product, but it doesn't work at Zettai hosting (at least in
Sauti account) . We generated a patch to enable Redirection Tool plone
product at Zettai.<br />
  </li></ul>
<p>People say that "Google likes Plone sites".  However,
it is possible to use Plone in such way that only main page will be
indexed by Google. 
Plone is a great tool for SEO itself, but you should know how to use it.</p>
<h3>Plone SEO Issues.</h3>
<p>Basically, duplicated content is the main issue. It can be
discussed in different situations<br /></p>
<ol>
  <li><b>Links to folders. </b> <br />
If you insert internal link with Kupu then it creates relative link to
some Page or other object. It's a pity that it is not possible to
insert link to Folder. You must create link to default item of folder
instead of link to Folder. Links from Navigation portlet lead to Folder
and internal links lead to Pages with the same content. Here is
duplicated content issue.</li>
  <li><b>Relative links in portlets and acquisition.</b>
    <br />
If you create links in  static portlets with relative links
then links may work because of acquisition, but a lot of duplicated
content will be generated. Google robots may lost in huge amount of
pages generated with Zope acquisition. By the way, that's why <a href="http://www.sauti.co.uk/" target="_self">Sauti</a>
wasn't indexed by Google.</li>
  <li><b>RSS and relative links in Pages, News, etc.<br />
    </b> If you insert internal link with Kupu then it creates
relative link to some Page or other object.<br />
<p> &lt;a href="../folder/filename"&gt;link
text&lt;/a&gt;<br />
In this case rich text RSS2 feeds will include broken links and images.<br />
I remove "relative links" feature in Kupu by customizing
kupuploneeditor.js file. Just remove <br />
    <code> contents = this.makeLinksRelative(contents,
base).replace(/&lt;\/?body[^&gt;]*&gt;/g, ""); </code>
    <br /></p>
</li>
  <li><b>Images preview.</b> It is not easy for me to
estimate how Google index Images in Plone. Plone preview Image with
different parameters without .jpg .png at the end.<br />
<ul>
      <li> If you insert image in Page with latest Kupu,
it generates the code similar to <br />
        <code>&lt;img src="filename.jpg/image_preview"
alt="Title"&gt;</code> or <code>&lt;img
src="filename.jpg/image_thumb" alt="title"&gt;</code>. It
depends on size of thumbnail. It works perfect for image resizing.
However, it is better to have <code><br />
&lt;img src="filename-</code><code>image_thumb</code><code>.jpg/"
alt="title"&gt; then </code><code>&lt;img
src="filename.jpg/image_thumb" alt="title"&gt;</code></li>
      <li>Random Image is not a good choice for Google. If you
have subfolders with images plone-site/gallery/subgallery1 then random
image represent the subgallery on the level of
plone-site/gallery/.  It would be nice to see here the first
image from <code>/plone-site/gallery/subgallery1/folder_contents</code>
instead of random image.<br />
      </li>
      <li>Suppose, you create usual photo gallery: add Folder
"Photos" , add images to "Photos", change folder Display View to <code>Thumbnails
View</code>. Folder page includes the photo with thumbnails <br />
        <code>&lt;img src="filename.jpg/image_thumb"
alt="title"&gt; </code>and links <code>to </code>photo
preview page <code>&lt;a href="filename.jpg/view"
title=""&gt;</code>. View template includes image &lt;img
src="filename.jpg/image_preview" and link to actual photo &lt;a
href="filename.jpg/image_view_fullscreen" class="discreet"&gt;. I
don't know how Google can index it properly, site structure is broken
here.<br />
      </li></ul>
Personally, I like how images can be managed in Plone, but I don't know
how Google can index it in Proper way. Image file extansions .jpg .gif
should be at  the end of url. Default templates use  <code>&lt;img
src="filename.jpg/image_view_fullscreen"&gt;</code> for full
size image.  I
suppose that Plone images are not well prepared for Google.</li>
  <li><b>HTML white spaces.</b> If you look at html
source of usual Plone page (View -&gt; Source in IE, Ctrl-U in
Firefox), you see a lot of white spaces. HTML white spaces in source of
Plone pages appear because of ZPT code. ZPT may be customized to
prevent white spaces, but templates will be not usable for developer in
this case. We had experience before in such  type of
customization. It is possible to save 30% of HTML size. Look at <code>view
source</code> of <a href="http://www.assetprotectionplanners.com/planning" target="_self">this site</a>  and compare it
with usual Plone site source.<br />
  </li>
  <li>Default <b>plone calendar portlet</b> 
has the following links<br />
<pre id="line99">href="plone-site/current-object?None&amp;month:int=6&amp;year:int=2006&amp;orig_query=None" rel="nofollow"<br /></pre>
This issue is solved by corresponding parameter <code>rel="nofollow"</code>.
However, it would be nice to see links to smartfolders here. This issue
is not critical for me.</li><li>Using  hidden H5 tagslike <br /><code>&lt;h5 class="hiddenStructure"&gt;Sections&lt;/h5&gt;<br /></code> in html is not good for Google. I suppose, they will be definitely removed, but H5 is still available in Plone 2.5. It can be replaced with DIV.<br /></li><li>I'm not a Accessibility expert, but as for me, using of H1  in Logo template is not good for SEO. H1 is the same on all pages, it is used for logo insert. <br /></li></ol>
<h3>Resume</h3>
<p>Plone is the best, but it is possible to make it even better.<br /></p>
 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/cms"
                      rel="tag">CMS</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">Plone</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone+seo" rel="tag">Plone SEO</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/seo" rel="tag">SEO</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Plone skins development</title>
                      <link>http://berehulyak.com/blog/plone/skins-development</link>
                      <description></description>
                      
                      
                      <pubDate>Mon, 16 Jan 2006 11:48:31 -0600</pubDate>
                      
     
        <category>CMS</category>
     
     
        <category>plone</category>
             
        <content:encoded><![CDATA[Jon Stahl in his post "<a href="http://theploneblog.org/archive/2006/01/05/how-onenorthwest-customizes-plone-for-grassroots-websites/">How ONE/Northwest Customizes Plone For Grassroots Websites</a>" describes the process of Plone skins development in ONE/Northwest. <br>
<br>
Jon Stahl inspired other developers:<br>
<br>
<blockquote>What I'd like to know is: what kinds of tricks do you use? ... <br>
I bet there are lots more 'smart practices' for building simple Plone sites.<br>
</blockquote>Recently Volodymyr Rudnytsky from <a href="http://quintagroup.com">Quintagroup</a> wrote tutorial <a href="http://plone.org/documentation/tutorial/creating-plone-skin-products-with-plone-skin-dump">Creating Plone Skin Products with Plone Skin Dump</a> . He describes the process of&nbsp; Plone skins development using <a href="http://quintagroup.com/services/plone-development/products/skin-dump">Plone skin dump product</a>.<br>
For example Plone skin dump was used for generation of all <a href="http://skins.quintagroup.com">Alternative Plone skins</a>. 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/cms"
                      rel="tag">CMS</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">plone</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Alfresco vs Plone, is Alfresco the perfect open source ECMS</title>
                      <link>http://berehulyak.com/blog/plone/alfresco-comparison</link>
                      <description></description>
                      
                      
                      <pubDate>Mon, 16 Jan 2006 11:07:22 -0600</pubDate>
                      
     
        <category>Alfresco</category>
     
     
        <category>CMS</category>
     
     
        <category>Plone</category>
             
        <content:encoded><![CDATA[<b>Seth Gottlieb in his <a href="http://contenthere.blogspot.com/2005/12/alfresco-and-plone.html">blog</a>&nbsp; compares <a href="http://www.alfresco.org/">Alfresco</a>&nbsp; vs <a href="http://berehulyak.com/technology/plone">Plone</a></b><br>
<br>
<blockquote>So, is <a href="http://www.alfresco.org/">Alfresco</a> the perfect open source ECM? Not quite. At least not yet. First of all, <a href="http://www.alfresco.org/">Alfresco</a>
is not all open source. Features like group based access control and
clustering are actually "Shared Source" and require monthly subsription
fees to use.<br>
</blockquote>
...<br>
<blockquote>There is a large degree of functional overlap between <a href="http://berehulyak.com/technology/plone">Plone</a> and <a href="http://www.alfresco.org/">Alfresco</a>.
They both have the functionality necessary for groups of users to
manage and share documents: access control, search, metadata, etc. <a href="http://berehulyak.com/technology/plone">Plone</a>
also supports WebDAV and has a mechanism where files automatically
updated on the server when edited with a client application such as
Microsoft Word. But it does not support <a href="http://www.microsoft.com/mind/1196/cifs.asp">CIFS</a>. Alfresco has the advantage of a content rules framework which Plone is missing because of its lack of an event model. <a href="http://www.alfresco.org/">Alfresco</a>
has a better content versioning system. The many companies who have
standardized on Java will feel more comfortable working with a Java
solution<br>
</blockquote>
...<br>
<blockquote>There are several areas where <a href="http://berehulyak.com/technology/plone">Plone</a> has a significant edge. The most notable of which is handling web content. <a href="http://berehulyak.com/technology/plone">Plone</a>
is an effective and elegant hybrid of a document management system and
a web content management system. Plone's workflow model is more robust
than Alfresco's. The other significant advantage that Plone has is its
maturity</blockquote> 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/alfresco"
                      rel="tag">Alfresco</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/cms" rel="tag">CMS</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">Plone</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Plone-dislike keyword proposal</title>
                      <link>http://berehulyak.com/blog/plone/dislike-antypathy</link>
                      <description>proposal is to add articles (blog posts, forum topics) with Plone antipathy to del.icio.us with Plone-dislike keyword.</description>
                      
                      
                      <pubDate>Wed, 16 Nov 2005 08:42:17 -0600</pubDate>
                      
     
        <category>Plone</category>
     
     
        <category>Plone blog</category>
             
        <content:encoded><![CDATA[Sometimes it is possible to see blog posts and forum threads with Plone antipathy.
<ul>
<li> People compare Plone with other CMSs</li>
<li> Someone try Plone and post that it is hard to learn</li>
<li> One can write that he dislike Plone because of performance issues or lack of some features</li></ul>

 <p>
It is important to quickly find out such posts and protect Plone reputation.
Sometimes only one comment can help people stay with Plone or choose Plone.
</p>
So proposal is to add articles with Plone antypathy to del.icio.us with <b>Plone-dislike</b> keyword. People from Plone community will react more  quickly to such posts.
<p>
<a href="http://del.icio.us/tag/plone-dislike">http://del.icio.us/tag/plone-dislike</a>
</p> 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/plone"
                      rel="tag">Plone</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone+blog"
    rel="tag">Plone blog</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>The Plone Blog launched</title>
                      <link>http://berehulyak.com/blog/plone/theploneblog</link>
                      <description>Alan Runyan (Enfoldsystems) and  Jon Stahl launched The Plone Blog </description>
                      
                      
                      <pubDate>Wed, 16 Nov 2005 06:07:13 -0600</pubDate>
                      
     
        <category>Alan Runyan</category>
     
     
        <category>Jon Stahl</category>
     
     
        <category>Plone</category>
     
     
        <category>Plone blog</category>
     
     
        <category>blog</category>
             
        <content:encoded><![CDATA[<p>Alan Runyan (Enfoldsystems) and  Jon Stahl launched <a href="http://www.theploneblog.org">The Plone Blog</a> an effort to provide some more accessible and easy-to-digest coverage of the Plone Community.
</p>
<blockquote>
Over the next few weeks, Alan and I are going to start providing some snappy, informal coverage of Plone -- along with some opinions and advocacy.  We hope to expand the reach of the Plone community, catalyze some new conversations about the future of Plone and to inspire others to dive in and continue the work of building Plone into a world-class content, collaboration and community system.
</blockquote>

Jon Stahl invite people write to <a href="http://www.theploneblog.org">The Plone Blog</a>
<blockquote>
Write for The Plone Blog - we're always looking for folks who love Plone and want to be part of its voice.</blockquote>

Nice start. I'm very interested in <b>http://blogs.plone.org</b> project or <b>http://blogs.plone.net</b>.  Such project can have similiar implementation to "The Plone Blog" or aggregate content from Blogs like <a href="http://www.contentmanagementsoftware.info/blog/">CMS Info blog<a href="http://www.theploneblog.org">The Plone Blog</a> is based on Quills. However it is not the only plone product that can be used. There are also <a href="http://quintagroup.com/services/plone-development/products/plone-blog">Plone Blog</a> by Quintagroup and <a href="http://www.knownet.com/products/product-info/knotes/">Knotes</a>.

 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/alan+runyan"
                      rel="tag">Alan Runyan</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/jon+stahl" rel="tag">Jon Stahl</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">Plone</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone+blog"
    rel="tag">Plone blog</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/blog" rel="tag">blog</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Plone disadvantages, SQL Storage capability</title>
                      <link>http://berehulyak.com/blog/plone/disadvantages-sql-storage</link>
                      <description>Here is a guy who talk about Plone disadvantages</description>
                      
                      
                      <pubDate>Sun, 28 Aug 2005 15:47:58 -0500</pubDate>
                      
     
        <category>django</category>
     
     
        <category>google</category>
             
        <content:encoded><![CDATA[<p>Here is a guy who talk about <a href="http://b3d70.blogspot.com/2005/08/i-take-django.html">Plone disadvantages</a></p>
<p><blockquote>Its been a while since I started take a play with django web framework. I run their tutorial and take alook how to deal with it. At the moment, I compare django with plone. I like plone and I wish to used it as my production area, but I got stuck with their SQL Storage capability.</p>
<p>Plone allows you to store your data on any other RDBMS like MS-SQL, Oracle, PostgreSQL and etc. But, Plone required to store your object metadata at ZODB, and it must. This is it. This is the one that I dont want, Its mean, as my RDBMS data grows, then my metadata on ZODB will grows either. I dont want it. Thats why I keep delay my application to jump to Plone.
</blockquote></p>
 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/django"
                      rel="tag">django</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/google" rel="tag">google</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Why people choose Drupal over Plone</title>
                      <link>http://berehulyak.com/blog/plone/drupal-over-Plone-syndication</link>
                      <description>Alexandra Samuel recently evaluated Plone, Drupal and a bunch of other CMS platforms for a project involving the creation of a network of websites that want to exchange a great deal of information via RSS.</description>
                      
                      
                      <pubDate>Sat, 27 Aug 2005 02:19:44 -0500</pubDate>
                      
     
        <category>Drupal</category>
     
     
        <category>Plone</category>
     
     
        <category>Plone vs Drupal</category>
     
     
        <category>plone</category>
             
        <content:encoded><![CDATA[<p><p>In the end, she chose Drupal, mainly because it had built-in RSS aggregation features.</p></p>
<p><p>It was interesting to note what she said about <a href="http://www.alexandrasamuel.com/telecentre-platform"> Plone RSS support</a> in her writeup:</p></p>
<p><blockquote>
  <p>As a CMS based on the Zope platform, Plone offers much greater programming extensibility than other CMS options we considered. The flip side of this virtue is that Plone&#8217;s relative advantages are much less compelling for a project that (like telecentre.org) specifically wants to limit its custom programming commitments.</p><p>  <p>Ultimately our biggest concern was that Plone's RSS aggregation capacity was not part of its standard install; while adding an aggregation module is a trivial technical challenge, the lack of native aggregation support spoke to the platform's orientation towards single-site content management rather than distributed community.</p>
</blockquote>
Here is my comment:</p>
</p>
<p>It is really sad that people think that Plone is lack of RSS support. Plone has RSS support by default!
It is not enabled by default. </p>
<p>Login to ZMI. Enable syndication on your Plone site. 
Select portal_syndication -> Properties tab -> Enable syndication </p>
<p>Login to Plone. Go to the folder which contains documents you want to syndicate.
Select Syndication tab -> Enable Syndication </p>
<p>You can also create RSS feed by any search result.</p>
<p>Default Plone can be extended with <a href="http://quintagroup.com/services/plone-development/products/qRSS2Syndication">Plone RSS2</a>
 Product to  generate RSS2 feeds with support of audio/video.
It allows the syndication of ATAudio objects, mp3, wmv, ppt, jpg files using RSS 2.0 with enclosures. </p>
<p>You can create feeds for any contentent types in Plone.
This Plone blog has
<a href="http://berehulyak.com/blog/RSS2">RSS2</a> feed and default <a href="http://berehulyak.com/blog/RSS">RSS</a>  feed.</p>
 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/drupal"
                      rel="tag">Drupal</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">Plone</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone+vs+drupal"
    rel="tag">Plone vs Drupal</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">plone</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>Export an OWL ontology into a working Plone content-type</title>
                      <link>http://berehulyak.com/blog/plone/owl-ontology</link>
                      <description>Transform an OWL ontology into a working Plone content-type. </description>
                      
                      
                      <pubDate>Wed, 04 May 2005 08:45:23 -0500</pubDate>
                      
     
        <category>owl ontology</category>
     
     
        <category>plone</category>
             
        <content:encoded><![CDATA[Here is recipe by AkaSig: <ol>
	<li>Choose <a href="http://protege.stanford.edu/plugins/owl/ontologies.html">any existing OWL ontology</a></li>
	<li>With <a href="http://protege.stanford.edu/">Protege</a> equipped with <a href="http://protege.stanford.edu/plugins/owl/">its OWL plugin</a>, create a new project from your OWL file.
</li>
	<li>Still within Protege, with the help of <a href="http://protege.stanford.edu/plugins/uml/">its UML plugin</a>, convert your OWL-Protege project into a UML classes project. You get an XMI file.
</li>
	<li>Load this XMI file into an UML project with <a href="http://www.gentleware.com/">Poseidon</a>. Save this project under the .zuml Poseidon format.
</li>
	<li>From poseidon, export your classes a new xmi file. It will be Plone-friendly.
</li>
	<li>With a text editor, delete some accentuated characters that Poseidon might have added to your file (for example, the Frenchy Poseidon adds a badly accentuated &#8220;Modele sans titre&#8221; attribute into your XMI) because the next step won&#8217;t appreciate them
</li>
	<li><em>python Archgenxml.py -o YourProduct yourprojectfile.xmi </em>turns your XMI file into a valid Plone product. Requires <a href="http://www.plone.org/">Plone</a> and <a href="http://plone.org/documentation/archetypes/download">Archetypes</a> (see <a href="http://plone.org/documentation/archetypes/">doc</a>) latest stable version plus <a href="http://plone.org/documentation/archetypes/archgenxml-manual/documentation/tutorial/archgenxml-getting-started">ArchgenXML</a> head from the <a href="http://tortoisesvn.tigris.org/">subversion</a> <a href="http://svn.plone.org/archetypes/ArchGenXML/trunk/">repository</a>.
</li>
	<li>Launch your Plone instance and install YourProduct as a new product from your Plone control panel. Enjoy YourProduct !
</li>
	<li>eventually populate it with an appropriate <a href="http://plone.org/documentation/archetypes/ArchetypesDeveloperGuide/index_html#marshaller-im-export-of-archetypes-content">marshaller</a>.</li>
	</ol> 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/owl+ontology"
                      rel="tag">owl ontology</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">plone</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
        
            
                  <item>
                      <title>How to migrate from phpbb to Plone</title>
                      <link>http://berehulyak.com/blog/plone/phpbb</link>
                      <description>Getting Plone and phpBB to use the same Usernames and Passwords HOWTO.
A way of integrating Plone with phpBB mySql members info rather than a full
migration. </description>
                      
                      
                      <pubDate>Tue, 05 Apr 2005 05:01:34 -0500</pubDate>
                      
     
        <category>phpbb</category>
     
     
        <category>plone</category>
             
        <content:encoded><![CDATA[<p>Here is a link to the main info.<br />&quot;from phpbb to Plone&quot;:http://article.gmane.org/gmane.comp.web.zope.plone.user/32808<br /><br />Informational Links:<br /><br />http://sourceforge.net/mailarchive/message.php?msg_id=6147588 <br />http://www.zope.org/Members/TheJester/exUserFolder/UnenlightenedZopistasGuideToXUF<br />http://www.phpbb.com/phpBB/viewtopic.php?t=234106<br />http://www.zope.org/Members/adustman/Products/ZMySQLDA<br />http://zope.org/Members/TheJester/exUserFolder<br />http://exuserfolder.sf.net/<br /><br />Products required for Plone/phpBB MySQL connection (install from<br />command line in Debian):<br /><br />apt-get install python-mysqldb<br /><br />Products required for Plone/phpBB MySQL connection (from within Zope):<br /><br />ExUserFolder <br />ZMySQLDA <br /><br />Untar into /user/lib/zope/lib/python/Products<br /><br />Restart Zope.  Verify that both exUserFolder and ZMySQLDA installed<br />properly by clicking on the Control Panel --&gt; Products links in the<br />ZMI.  If they didn't, figure out why.<br /><br />In ZMI root, add:<br /><br />&quot;Z MySQL Database Connection&quot; from the dropdown menu.<br /><br />Supply the database, and the username and password for access when prompted.<br /><br />If it works, it should say the connection is open.<br /><br />Access your phpBB Database using phpMyAdmin:<br /><br />ExUserFolder requires the table name, username column name, password<br />column name, and a Zope Roles column name.  Inside the phpbb2<br />database, the usernames and passwords for phpBB are located in the<br />phpbb_users table.  All of the above information is there with the<br />exception of the Zope Roles column.  I had to create this 'zope_roles'<br />column in the phpbb_users table as this is where Zope/Plone stores its<br />Roles for that particular user.  The column had the following<br />attributes:<br /><br />Field: zope_roles<br />Type: varchar(255)<br />Null: No<br />Default: Member<br /><br />I also had to run the following SQL within the phpbb2 database:<br /><br />DROP TABLE IF EXISTS passwd;<br />CREATE TABLE passwd (<br />	username varchar(64) NOT NULL PRIMARY KEY,<br />	password varchar(64) NOT NULL,<br />	roles varchar(255)<br />);<br /><br />DROP TABLE IF EXISTS UserProperties;<br />CREATE TABLE UserProperties (<br />	username varchar(64) NOT NULL,<br />	prop_key varchar(128) NOT NULL,<br />	value text NOT NULL,<br />	istemporary int<br />);<br /><br />CREATE UNIQUE INDEX username_prop_idx on UserProperties(username,prop_key );<br />CREATE INDEX username_idx on UserProperties(username);<br /><br />This SQL came with the exUserFolder product and is required.<br /><br />Modifying the password encryption used in exUserFolder:<br /><br />PhpBB stores md5 hashes of your password in its database.  As<br />supplied, exUserFolder uses DES encryption.  In order to use md5<br />hashes I needed to edit mysqlAuthSource.py located in<br />exUserFolder/mysqlAuthSource/ and add the following (replaced<br />&quot;Original cryptPassword function&quot;):<br /><br /># Original cryptPassword function<br />#	def cryptPassword(self, username, password):<br />#			salt =username[:2]<br />#			secret = crypt(password, salt)<br />#			return secret<br /><br /># Alternate cryptPassword function, returns md5 hash of the password<br />	def cryptPassword(self, username, password):<br />		passhash = md5.new(password)<br />		secret = passhash.hexdigest()<br />		return secret<br /><br />I also had to add &quot;,md5&quot; to the import statement at the beginning of<br />the file in order to use md5 encryption.<br /><br />NOTE: This code was taken from pgAuthSource.py in exUserFolder/pgAuthSourceAlt<br /><br />Restart Zope from either the ZMI or the command line.  md5 hashes now are used.	<br /><br />In your Plone root in the ZMI (e.g. /testing/):<br /><br />If there is an acl_users folder in the Plone site, delete it.  Do NOT<br />delete acl_users from the ZMI root or you will be screwed.<br /><br />Add &quot;ex User Folder&quot; from drop down menu in your Plone root.  Supply<br />the following information:<br /><br />Add MySQL Authentication Source<br />Database Connection: MySQL_database_connection	<br />Table Name: phpbb_users<br />Username Column: username	<br />Password Column: user_password	<br />Roles Column: zope_roles<br /><br />Restart Zope from either the ZMI or the command line.  <br /><br />Success!  You can now log into Plone using an existing name from phpBB!<br /><br />If you receive an error, take a look at the error message in your<br />Plone portal and your traceback in your Error Log in the ZMI.  From<br />those two error screens, you should have an idea what went wrong. <br />Correct your mistakes and restart Zope.  Test.  Wash, lather, rinse,<br />repeat until successful.<br /><br />We're not out of the woods yet.  We still need to deal with a couple things. <br /><br />First off, Joining a Plone site from the Plone side will cause a<br />problem.  As supplied, anyone can join a Plone site by clicking the<br />Join link at the top of the page.  Joining a Plone/phpBB website from<br />the Plone side is BAD as phpBB needs additional information from you<br />in order to function properly.  In order to fix this, we need the Join<br />link to always take you to the phpBB registration screen instead of<br />the Plone registration screen.<br /><br />Change link to where Join points:<br /><br />Click portal_registration in the ZMI.<br /><br />Change action from 'string:${portal_url}/join_form' to<br />'string:http://mysite.com/phpBB2/profile.php?mode=register'.<br /><br />This takes care of directing the anonymous user to Join at the<br />bulletin board.  However, it doesn't keep someone that is savvy with<br />Plone from accessing the /join_form within Plone itself.<br /><br />To keep someone from accessing the join_form:<br /><br />Customize the join_form in portal_skins/plone_forms/ by clicking on<br />join_form and then on the customize button.<br /><br />In portal_skins/custom/ click on join_form and then click on its Security tab.<br /><br />Uncheck Acquire from the View action and check it for Manager.<br /><br />Now only the manager of the website can get to this form.  Anyone else<br />will be prompted to log in instead.  If down the road you want to go<br />back to allowing people access to join_form, just delete it out of<br />your /custom/ folder or rename it.<br /><br />Second, phpBB doesn't have as rigid of username requirements as Plone<br />does.  Because of this, members of your phpBB website can use<br />non-standard characters in their usernames that Plone will not want to<br />work with.  These non-standard characters include .,# &lt;at&gt; !{})*%, etc, and<br />can cause errors for that user if he/she tries to log in with that<br />non-standard name.  Errors are primarily the lack of a Member Folder.<br />To fix this on phpBB's side, do the following:<br /><br />In line 106 of includes/functions_validate is a list of not allowed chars:<br /><br />Code:<br />  	 // Don't allow &quot; and ALT-255 in username.<br />  	 if (strstr($username, '&quot;') || strstr($username, '&amp;quot;') ||<br />strstr($username, chr(160)))<br /><br />You can add more characters to this line by putting as many as you<br />want of thes before the last two &quot;))&quot;:<br /><br />Quote:<br />|| strstr($username, 'CHARACTER')<br /><br />Here is where we will add our characters.  Once done, replace the<br />existing one on your server and you're done.<br /><br />That's it!  You should now have a fully functional integration between<br />Plone and phpBB!</p> 
     _____<br />
     tags:
     <span class="simpleBlogBylineCats">
           <strong><a href="http://www.technorati.com/tag/phpbb"
                      rel="tag">phpbb</a></strong>
           
           |&nbsp;
                      <strong><a
    href="http://www.technorati.com/tag/plone" rel="tag">plone</a></strong>
           
     </span>
]]>
</content:encoded>
     

                  </item>
            
        
    </channel>
</rss>

