最近的一个项目里要用wiki作为底层模型的知识源,这半个月里先后尝试了JSPWiki,xwiki,mediawiki,对这三个开源wiki都做了很多了解,在这里记录一下。
[b]JSPWiki[/b]
开始时候找到JSPWiki,JSPWiki的基本功能都是有的,但问题是它采用了文件的方式,而不是数据来存储数据,这在我们后期分析数据、为项目提供知识源时候会有很大的困难,因此没有过多的研究
[b]XWiki[/b]
xwiki是一个JAVA编写的比较流行的开源wiki软件了,它支持各种数据库,功能也很完善。
在了解xwiki的过程中,感觉它的功能比JSPWiki强大,除wiki基本功能,还提供博客功能,因此结构上有些复杂。有两点是它的优点,一是他的页面组织方式符合人们的一般思维,即先建分类、再建条目;二是他默认采用所见即所得的编辑器,不需要用户了解特殊的语法规则就能正常使用。但是我在使用中发现,xwiki不支持多级分类,它的一层空间下面,不能包含子空间、而只能包含页面,这样的结构肯定不能满足大型的应用,所以也没有选择它。
另外在了解xwiki数据库结构时,找到了页面内容存储的地方。xwiki页面内容存在xwikircs表中,内容以xml格式存在XWR_PATCH字段中,用
[b]JSPWiki[/b]
开始时候找到JSPWiki,JSPWiki的基本功能都是有的,但问题是它采用了文件的方式,而不是数据来存储数据,这在我们后期分析数据、为项目提供知识源时候会有很大的困难,因此没有过多的研究
[b]XWiki[/b]
xwiki是一个JAVA编写的比较流行的开源wiki软件了,它支持各种数据库,功能也很完善。
在了解xwiki的过程中,感觉它的功能比JSPWiki强大,除wiki基本功能,还提供博客功能,因此结构上有些复杂。有两点是它的优点,一是他的页面组织方式符合人们的一般思维,即先建分类、再建条目;二是他默认采用所见即所得的编辑器,不需要用户了解特殊的语法规则就能正常使用。但是我在使用中发现,xwiki不支持多级分类,它的一层空间下面,不能包含子空间、而只能包含页面,这样的结构肯定不能满足大型的应用,所以也没有选择它。
另外在了解xwiki数据库结构时,找到了页面内容存储的地方。xwiki页面内容存在xwikircs表中,内容以xml格式存在XWR_PATCH字段中,用
select XWR_PATCH from xwikircs where XWR_DOCID = ......;
可以讲内容读出,可以发现,页面评论在<comment></comment>标签中,页面内容在<content></content&g