本日志标题:DW8新功能 之 建立XSLT页可视化操作XML数据(一)        [2005-10-19]



本文作者来自 缔吧-缔客论坛 { http://dw8.cn } 会员 cnbruce
版权归 {缔吧、蓝色理想、织梦幻影} 共同所有,转载请保留本信息,TKS/



标题:DW8新功能 之 建立XSLT页可视化操作XML数据

关键字:DW8,XSLT,可视化操作,XML

开言

DW8这个新的功能究竟好在哪里?这不得不先说了一些令初学者感到犯晕的多个技术名词。

但注意:本文主要是进行例题的过程说明,您可以按照步骤很轻松地完成本案项目。不过终究会在操作进行时会遇到一些概念,这里先预介绍,内容只做概要,相关具体内容可搜索参考详细。

先说XML

这是什么?越来越多的站点开始应用了XML,最常见的就是各个BLOG中存在RSS。

SO,现在出现了两个技术名词:XML和RSS。

· 请大家多动手,多看多观察如下几个站点的RSS

http://cnbruce.com/blog/rss2.asp
http://dw8.cn/common/dw8.xml
http://www.blueidea.com/tech/rss.xml

请仔细看,他们有没有共同点?

1,都是树型目录的结构
2,基本都有<channel>,<item>,<title>等相关标签
3,......................

其实,RSS就是一个特殊标准的XML文档,特殊在哪里?比如必要要声明 <rss version="2.0"> , 比如以 <channel>,<item>,<title> 等固定的标签来包含并表示相关内容,随着RSS标准规范版本(如RSS1.0、RSS2.0)的不同,其将定义不近相同的标签来表示特定的内容。

所以说RSS是XML文档中的特殊一类。

· 接着是XML的认识

从刚才的RSS文档中可以了解到XML的结构是如此的简单。

简单之一:其标签都是首尾呼应对称的,比如<channel>和</channel>,这和HTML标签是一回事。

简单之二:这些标签不象HTML标签已经固定死的,比如<body>、<table>、<td>。在XML中我可以任意定义标签,甚至是中文(当然使用中文必须在XML中预先声明:encoding="gb2312")。

下面就可以动手书写一个XML文档:mysite.xml



<?xml version="1.0" encoding="gb2312"?>

<我的站点>

<站点信息>
<建立时间>10/29/2003</建立时间>
<站点地址>http://www.cnbruce.com</站点地址>
<站点说明>个人的BLOG站点,比较多的WEB相关的资料收集站</站点说明>
</站点信息>

<站点信息>
<建立时间>5/20/2005</建立时间>
<站点地址>http://www.liury.com</站点地址>
<站点说明>喜欢刘若英的歌,欣赏她这个人,所以想收集些她的东西,可惜一直没时间</站点说明>
</站点信息>

<站点信息>
<建立时间>7/20/2005</建立时间>
<站点地址>http://www.dw8.cn</站点地址>
<站点说明>爱好DW,恰MM的新版软件DW8的发行,于是有了这个站点</站点说明>
</站点信息>

<站点信息>
<建立时间>9/26/2005</建立时间>
<站点地址>http://www.yzcheng.com</站点地址>
<站点说明>扬州城,立足本土,建立扬州对外窗口站点,希望为扬州尽自己的绵力</站点说明>
</站点信息>

</我的站点>



很简单,以<我的站点>...........</我的站点>包括各类不同<站点信息>的内容

在记事本中输入(建议自己输入加深印象:)以上标签代码,保存为 mysite.xml 文件,并通过浏览器浏览。



OK,有了以上XML,或许有人问,要这XML干嘛?

是的,除了目录树的结构让我们感到好玩以外,别忘了RSS是它的一个重要应用,当然RSS的各XML标签所包括的内容是动态的,由程序而生成的,这是另外话;同时XML还作为未来的发展,目前已经逐渐被广泛应用……总之,你在本篇中是无条件接受XML这个词的:D

p.s.有关XML更详细的资讯内容请搜索互联网络,关键字“XML”、“XML是什么”、“XML教程”等
这里简单提供一个连接
http://dw8.cn/forum/NewsDetail.asp?ForumName=%B9%D8%D7%A2Web%B1%EA%D7%BC%26%C7%B0%CC%A8%B8%DF%BC%B6%B4%FA%C2%EB%CC%D6%C2%DB&DaysPrune=0&lp=1&id=63

说完XML,下面就谈下XSLT

这个XSLT是个什么玩意儿?有什么用?又该如何使用?

可以观察到刚才的RSS文档,虽然内容信息都显示出来了,但其可读性是比较弱的,一般都是希望用网页的方式直观地查看。

那么一直对XML疑惑并对HTML钟情的朋友,也许会问:既然用网页直观显示,直接用DW快速编辑个表格,将如上主要数据录入单元格不就行了么?

对的,确实可以如此不必使用XML麻烦。但有个要提醒一下,纯的XML文件只记录了数据,没有任何冗余的类似HTML中<table><td>之类的标签,所以XML其更适合保存比纯净水还纯的数据。这是要和HTML区分开的。

还有,有人会说现在不是讨论WEB新标准比较多么,我可以用<ul><li>来实现啊。

也是对的,而XHTML正是HTML向XML过渡的一个东西,再说,用<ul>、<li>有得比<站点信息>、<建立时间>如此令人一目了然么?

好,以上就是说的 为什么要用XML,相信各位开始慢慢地喜欢上了:p

那么如何让XML文档显示为可读性比较强的WEB页面效果,接触“WEB 标准”的朋友很多的则是由(XHTML+CSS)联想到XML+CSS了。

对的,用CSS确实能将XML数据显示更为人性化一点,但CSS毕竟只能是显示,不能有选择有目的用户自定义的显示。

SO,XSLT的到来解决了我们的需求!

可扩展样式表语言转换 (XSLT) 是 XSL 的子集语言,它允许您在 Web 页面上显示 XML 数据,并将 XML 数据和 XSL 样式“转换”为 HTML 形式的可读的样式化信息。

其实XSL也还是XML的一种特殊结构

p.s.注意:RSS,XSL同是XML的结构

简单来说,利用XSL我们可以从XML中进行有选择性的提取和显示,当然其功能还不仅仅如此,其主要起一个类似数据库查询语句SQL的功能,即XML模式化查询语言:通过相关的模式匹配规则表达式从XML里提取数据的特定语句。

这下该了解到XSL的主要作用了吧,即其主要其的是对XML数据的处理功能,而CSS则是对数据内容的显示修饰功能。

SO,现在一个完整的数据处理用WEB进行可读性较高访问的方法是:XML+XSL+CSS,这几块的分别功能,我想我再不需要罗嗦了

那么,正如RSS是XML特殊一样,XSL里面究竟有什么特殊呢

参考微软的"XSL开发者指南",我们大致可将模式语言分为三种:


选择模式:
<xsl:for-each>、<xsl:value-of>和 <xsl:apply-templates>

测试模式:
<xsl:if> 和<xsl:when>

匹配模式:
<xsl:template>



大致的结构体系就是筛选出所需要的XML数据来,具体内容你可以在互联网搜索“跟我学XSL”系列。

本文所要说的,我们不去编写如此复杂的XSL来过滤出XML信息,而是通过Dreamweaver8的新功能,来可视化操作XSLT页面——这才是本文的重点(当然,没有上面的过场,也不能一步到此:)


在百度搜索完整的DW8新功能 之 建立XSLT页可视化操作XML数据(一)内容,或者用Google搜索相关的更多内容

By [cnbruce] at 9:19:16 | 评论 [0] | 浏览 [26949] | TrackBack| 返回顶部

About Comments
此篇日志暂时没有相关的说明和评论。:)


Post a Comment
呢称: 验证码: 
禁止笑脸转换 禁止UBB | 缩放输入框:6 5 | [Ctrl+Enter提交](1000个字符限制)