您的位置:建站学院首页 >> 文章 >> 网页设计 >> XML
XML 和配置文件
作者:Joe "Zonker" Brockmeier
发表时间:2001年2月
原文链接: http://www.performancecomputing.com/columns/zonker/zonker0201.shtml
译者:dlee
翻译时间:2001年5月24日
上个月,我写了关于 XML 的奇迹和它能够怎样给系统管理员带来好处。这是一个很广泛的话题,我相信比我更好的头脑可以想出一些其它的方法来实现有趣的 time-savers (节省时间的好工具 -- 译者注) 和我尚未考虑到的解决方案。
这个月,我要看一下使用 XML 来做配置文件。你知道,在 /etc 下或其它某个地方的那些讨厌的文件每个都有其自己的格式。虽然这些文件都为一个目的服务,但是写一个可以与多个文件共同工作的任何类型的集中管理程序都非常困难。我们大多数使用 Linux 或其它 Unix 的人都避免使用 configuration wizards (配置向导 -- 译者注) 和用于系统管理的 GUI 工具。尽管如此,易用的配置工具对于把 Linux 带向一个新的层次是需要的。当然这并不意味着我们必须使用它们,这仅仅意味着必须有这样的工具。
我将看看一个简单的用于 Linux 配置文件的 XML Schema。上个月,我说使用一个 DTD 来做这个工作。但是在这期间我看了一下 XML Schema 的建议,我确信使用 Schema 是更好的方法。
一段关于 DTD 和 Schema 的迅速讨论:
DTD 和 Schema 之间的区别是什么?首先,DTD 并不是真正的 native XML (XML 土著 -- 译者注),DTD 是一个 SGML 的遗留物,它们对于出版业是非常出色的。然而 DTD 对于在 Web 上共享数据 (XML 最初的目的) 是不够的,因为它不允许定义正确的数据类型 (proper data types)。只有极少的数据类型可以在一个 DTD 中定义,但是它们对于编程或者做类似的事并非真正有用。而 Schema 被设计用来处理通常的数据类型,并且允许通常的数据类型组合成为新的数据类型。
一段简短和差劲的关于 XML Schema 的解释,来自于 W3C 的网站 (这只是作者的观点 -- 译者注):
XML Schema 定义了共享的标记词汇表和允许机器执行的由人所定义的规则,它提供了一个定义 XML 文档的结构,内容和语义的方法。
所以,确切地说,我们正在寻找的是 -- 一些给我们的配置文件带来结构的东西。
让我们看一下一个所有系统管理员可能都熟记于心的配置文件 /etc/fstab
我的 /etc/fstab 看起来是这样的:
/dev/hda1 swap swap defaults 0 0
/dev/hda2 / ext2 defaults 1 1
/dev/hda3 /home ext2 defaults 1 1
发表时间:2001年2月
原文链接: http://www.performancecomputing.com/columns/zonker/zonker0201.shtml
译者:dlee
翻译时间:2001年5月24日
上个月,我写了关于 XML 的奇迹和它能够怎样给系统管理员带来好处。这是一个很广泛的话题,我相信比我更好的头脑可以想出一些其它的方法来实现有趣的 time-savers (节省时间的好工具 -- 译者注) 和我尚未考虑到的解决方案。
这个月,我要看一下使用 XML 来做配置文件。你知道,在 /etc 下或其它某个地方的那些讨厌的文件每个都有其自己的格式。虽然这些文件都为一个目的服务,但是写一个可以与多个文件共同工作的任何类型的集中管理程序都非常困难。我们大多数使用 Linux 或其它 Unix 的人都避免使用 configuration wizards (配置向导 -- 译者注) 和用于系统管理的 GUI 工具。尽管如此,易用的配置工具对于把 Linux 带向一个新的层次是需要的。当然这并不意味着我们必须使用它们,这仅仅意味着必须有这样的工具。
我将看看一个简单的用于 Linux 配置文件的 XML Schema。上个月,我说使用一个 DTD 来做这个工作。但是在这期间我看了一下 XML Schema 的建议,我确信使用 Schema 是更好的方法。
一段关于 DTD 和 Schema 的迅速讨论:
DTD 和 Schema 之间的区别是什么?首先,DTD 并不是真正的 native XML (XML 土著 -- 译者注),DTD 是一个 SGML 的遗留物,它们对于出版业是非常出色的。然而 DTD 对于在 Web 上共享数据 (XML 最初的目的) 是不够的,因为它不允许定义正确的数据类型 (proper data types)。只有极少的数据类型可以在一个 DTD 中定义,但是它们对于编程或者做类似的事并非真正有用。而 Schema 被设计用来处理通常的数据类型,并且允许通常的数据类型组合成为新的数据类型。
一段简短和差劲的关于 XML Schema 的解释,来自于 W3C 的网站 (这只是作者的观点 -- 译者注):
XML Schema 定义了共享的标记词汇表和允许机器执行的由人所定义的规则,它提供了一个定义 XML 文档的结构,内容和语义的方法。
所以,确切地说,我们正在寻找的是 -- 一些给我们的配置文件带来结构的东西。
让我们看一下一个所有系统管理员可能都熟记于心的配置文件 /etc/fstab
我的 /etc/fstab 看起来是这样的:
/dev/hda1 swap swap defaults 0 0
/dev/hda2 / ext2 defaults 1 1
/dev/hda3 /home ext2 defaults 1 1