|
|
This article is available in: English Castellano ChineseGB Deutsch Francais Italiano Nederlands Portugues Russian Turkce Arabic |
by Floris Lambrechts <floris(at)linuxfocus.org> 关于作者: 这几年我一直是LinuxFocus/Nederlands的主编。我现在Belgium Leuven的电子系攻读 工业工程师,并花些时间摆弄Linux,PHP,XML和LinuxFocus,同时我也阅读一些书籍,如Stephen Hawking写的作品,(目前:)读的是Jef Raskin的‘The Humane Interface’。 目录: |
摘要:
这是关于XML的一个十分简要的介绍。
你会遇到Eddy the meta cat,XML语法警察(syntax police)以及一些DTD。
不要担心,我会解释的;-)
我要感谢Egon Willighagen和Jaime Villate,他们向我介绍了XML。这篇文章有些基于Jaime 的文章中的资料。你可以从页底的链接找到它们。
<sentence>
My <animal>cat</animal> is called <name>Eddy</name>.
</sentence>
现在即使是不会说话的计算机程序,也能分辨出'cat'是一种物种,而'Eddie'是一个名字。 如果我们想要生成一个文档,里面所有的名字都显示为蓝色, 而所有物种都显示为红色,那么XML可以很简单地为我们做到。 只是为了从中获得乐趣,我们会得到如下的显示:
My cat is called Eddy.
现在从理论上说,我们可以将布局信息(如这个例子中的颜色)放到一个独立的文件中,这就是 所谓的样式表(stylesheet)。当我们这样做时,我们实际上将布局信息和内容分隔开了,这被有些人 认为是Web设计TM中神圣的追求目标(Holy Grail)。到此为止,我们并没有做什么 特别的操作,添加元数据就是标注语言设计用来做的。那么,什么让XML如此特别?
<B> Bold text <I> Bold and italic text </B> italic text </I>
语法规则规定你必须在关闭 </B>
但是一支强大的警察部队毫无疑问有其优势:它带来了秩序。因为XML遵循如此严格的语法规则,
程序就可以非常容易地读取。另外,在你的XML文档中的数据是十分结构化的,这样人的读写都很简单。
实际上,在XML中的结构使得它甚至可以用来编写数据库(用HTML试试! :p)。这正是Egon
Willighagen为荷兰LinuxFocus部分所做过的,他关于这个系统的文章可在页底的链接中找到。
如果你能设法成为语法检查员的好朋友,那么你甚至可以采取一些方法让警察来实际做一些
你的工作。不过要做到这样,你就得聪明地使用DTD...
在我们上面的那个'Eddy the meta-cat'小例子中,我们已经创建了我们自己的XML标签。 当然,这种创建行为警察部队是无法容忍的!'穿着蓝色制服的人'想知道你在做什么,怎么做, 什么时候做以及(如果可能)为什么这样做。好的,没问题,你可以使用DTD来解释所有事情...
DTD允许你'创建'新的标签。实际上,它允许你创建全新的语言,只要它们是符合XML语法的。
DTD,或者Document Type Definition是一个包含了XML语言描述
的文件。它实际上是所有可能标签,它们的可能属性以及它们的可能组合的一份列表。DTD描述了
在你的XML语言什么是可能的,什么是不可能的。所以,当我们谈论'XML语言'时,我们实际上是在谈论
一个特定的DTD。
T这种'混合'由xml名字空间(namespace)完成。例如,你可在你的.xml文档里包括一个Docbook
DTD(如在本例中的'dbk' prefix),
所有Docbook的标签就可以在你的文档中以这种
形式使用(比如说这儿有一个docbook标签<just_a_tag>):
<dbk:just_a_tag> just some words </dbk:just_a_tag>
使用名字空间系统,你可以使用任何xml DTD的任何标签和任何 属性。它开启了一个可能性的世界,就像你在下章中所见到的一样...
The W3C,或 World Wide Web Consortium
这里有关于XML,MathML,CML,RDF,SVG,
SOAP,XHTML,名字空间的资料...
www.w3.org
Jaime Villate的一些资料(你可能需要在线翻译器来阅读最先的两个:)
Introduction to XML(in Spanish)
How to generate HTML with XML(in Spanish)
LSM-slides
程序HTML tidy:
www.w3.org/People/Raggett/tidy
Docbook
www.docbook.org
Mozilla.org的SVG计划
www.mozilla.org/projects/svg
相关LinuxFocus文章:
Using XML and XSLT to build LinuxFocus.org(/Nederlands)
Making PDF documents with DocBook
|
主页由LinuxFocus编辑组维护
© Floris Lambrechts, FDL LinuxFocus.org 点击这里向LinuxFocus报告错误或提出意见 |
翻译信息:
|
2002-05-28, generated by lfparser version 2.27