1、complexType与simpleType区别:
1)SimpleType类型的元素没有子元素,也没有属性。
2)当需要定义的元素包含了子元素或者属性时,必须使用ComplexType。
3)当需要基于内置的基本数据类型定义一个新的数据类型时,用simpleType。
2、SImpleContent,用于complexType元素上,用于限定该complex的内容类型,表示该complexType没有子元素,同时该complexType需要有属性,否则它就成为simpleType。
3、通过DOCTYPE可以明确指定文档的根元素,因为DOCTYPE后面跟的元素就是文档的根元素;通过schema是没法明确指定目标xml文档的根元素,xmlspy是通过推断哪个元素包含了其他元素来选择的,包含其他元素最多的那个元素作为文档的根,但我们可以明确指定文档的根元素而不必按照xmlspy的生成来做。
4、schema总结:
5、DOM:Document Object Model(文档对象模型),对于XML应用开发来说,DOM就是一个对象化的XML数据接口,一个与语言无关、与平台无关的标准接口规范。
6、要严格区分XML文档树种的根结点与根元素结点:根结点(Document)代表的是XML文档本身,是我们解析XML文档的入口,而根元素结点则表示XML文档的根元素,它对应于XML文档的Root。
7、JAXP(Java API for XML Parsing):用于XML解析的Java API。
8、SAX(Simple APIs for XML),面向XML的简单APIs
9、使用DOM解析XML时,首先将XML文档加载到内存当中,然后可以通过随机的方式访问内存中的DOM树;SAX是基于时间而且是顺序执行的,一旦经过了某个元素,我们就没有办法再去访问它了,SAX不必事先将整个XML文档加载到内存当中,因此它占据内存要比DOM小,对于大型XML文档来说,通常会使用SAX而不是DOM进行解析。
10、SAX也是使用观察者模式
11、JDom 、Dom4J