本人第一篇博客文章,内容是读《XML in a Nutshell》这本书的读书笔记,以前读了不少书,可惜的是经常是读的时候理解了,但是过一段时间印象慢慢浅了,等到要用的时候又要重新查书,重新理解。知识的慢慢遗忘是避免不了了,希望读书笔记能像数据库的index一样,能让今后重新学习理解的效率更高^_^正因为这个目的,我会尽量避免拖沓,让文章的内容简单易懂,同时也会省去一些我认为常识性的东西,而只记录一些我原先不知道的或者是思想性的东西。
本篇读书笔记的内容包括chapter1-2,之后的内容会陆续更新。
1.原先知道SGML是XML的前身,不知道的是SGML被XML取代是因为它太复杂了,而如今XML Schema也被业界认为太复杂了,新的Schema语言正在制订中。
2.关于Entity References,原来转义字符也是其中的一种,XML中标准的转移字符有然后自己也可以在DTD中定义Entity References,以下是标准转义字符的对照:
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
3.插入大段字符串而不需用转义符的语法是:
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
4.Processing Instruction的语法如下:
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
其中target是该instruction的标识,xxx是任何自由的字符串。为XML指定css的例子如下:
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
5.XML Declaration
![](https://i-blog.csdnimg.cn/blog_migrate/fa0791d1034a9ba29b556ec126dec712.png)
其中standalone是指是否指定外部的dtd进行验证。