免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 922 | 回复: 0
打印 上一主题 下一主题

如何用PHP把RDF内容插入Web站点之中(一) [复制链接]

论坛徽章:
2
丑牛
日期:2013-09-29 09:47:222015七夕节徽章
日期:2015-08-21 11:06:17
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-16 17:34 |只看该作者 |倒序浏览

设想一个从最热门的门户网站获得最新的新闻的站点。股票价格,天气信息,新闻故事,线式讨论组,软件发布……所有这一切都将被动态更新,每小时一次,不需要任何手工干预。我们可以想象这随之而来的站点访问量,源源不断的广告收入以及网管大人所受到的“阿谀奉承”。
但是现在,停止幻想,开始阅读,因为只要你密切关注此项
技术
,说不定你就能成为站点的主人。 对你的要求也只是稍许的想象力,一些聪明的
PHP
编码和几个免费的RSS文件。另外,很明显还包括这篇文章剩下的九个部分。
有内容,就联合成辛迪加(Have Content, Will Syndicate)
我们从最基本的开始——那么RSS究竟是什么鬼东西呢?
RSS(即RDF Site Summary)是一种格式,最早由Netscape公司设计,用于分发其门户站点My.Netscape.Com上的内容的描述信息。自1997年被提出以来,几经沉浮——可以点击文章末尾的链接,了解一下RSS悠久复杂的历史。现在的稳定的版本是RSS1.0,符合RDF规范。这一版本可以说即轻便又功能齐全。
RSS使得网管及时公布和分发某一特定站点的特定位置的最新最有趣的内容的描述信息变的可能。 从新闻文章列表到股票市场数据或着是天气预报,所有这些信息都可以通过结构良好的
XML
文档来发布,从而也可以被任何XML分析器进行分析,处理和翻译。
网站上最新信息的列表是经常更新的,而RSS使得这一列表的分发成为可能,也就为Web上简易的内容辛迪加联合打开了大门。想了解这其中的道理,请看下面这个简单的例子:
站点A,属新闻站点(“内容辛迪加组织者”),能够每小时发布一个包含最新新闻列表以及相应链接的RSS文档。 而这一RSS文档可以被其它站点获取(如站点B,“内容收集者”),分析并显示在站点B的索引页面上。 每次站点A发布一个新的RSS文档,站点B的索引页面都可以自动更新,以获取最新的新闻。
这种方案对交易中的双方机构都有效。 既然RSS文档中的链接都指向站点A上相应的文章,那么站点A将迅速体验到访问量的增加。 而站点B的网管可以休假一个星期,因为他有办法自动更新其站点上的索引页面,而这一
方法
仅仅是把索引页面与站点A发布的动态内容相连接而已。
有许多受欢迎的站点向公众提供详细的RSS或RDF新闻,如Freshmeat(http://www.freshmeat.net)和Slashdot(http://www.slashdot.org),当然还有其它许多站点。在这篇文章当中,我将广泛的使用Freshmeat网站的RDF文件。需要说明的一点是,这里所谈到的技术也可以应用于其它任何RSS1.0或RDF文件。
交换频道(Switching Channels)
典型的RSS文档包含一个由描述性元数据标记出来的资源列表(URLs),请看下面的例子:



Trog
Well-written technical articles and
tutorials on Web technologies
http://www.melonfire.com/community/columns/trog/









Building A PHP-Based Mail Client (part 1)
http://www.melonfire.com/community/columns/trog/article.php?id=100

Ever wondered how Web-based mail clients
work? Find out here.


Using PHP With XML (part 1)
http://www.melonfire.com/community/columns/trog/article.php?id=71
Use PHP's SAX parser to parse XML data and
generate
HTML
pages.


Access Granted
http://www.melonfire.com/community/columns/trog/article.php?id=62
Precisely control access to information
with the mySQL grant tables.

你可以看到,RDF文件由几个界限分明的部分组成。首先是文档序码(prolog),

然后是根元素中的名称空间声明。

接着是部分,这部分包含了RDF所要描述的频道的一般信息。在上面的例子中,频道是Melonfire网站的Trog专栏,专栏内容是新的技术文章和指南,每星期更新一次。

Trog
Well-written technical articles and
tutorials on Web technologies
http://www.melonfire.com/community/columns/trog/








区包含了一个区块,区块又包含了文档中描述的所有资源的一个顺序列表。该列表通过一系列的元素来表示。区块中每一个资源都在后面的区块中有更详细的描述。







还可以在其中放置一个区块,这样你就可以发布频道标志的URL。
所以为了肉,RSS1.0文档中的每一个区块都更详细地描述一个单独的资源,包括标题,URL和资源描述。







在这个例子里,区块描述了Ttrog“频道”中单独的一篇文章,并为这篇文章提供了描述和标题,以及URL。内容收集者可以利用URL创建“向后”链接。
你看得到,RSS1.0文件相当地直观明了,不管是手工,还是通过编程,


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/4206/showart_544863.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP