xml文档定义有几种形式?它们之间有何本质区别?解析xml文档有哪几种方式?

解决方案 »

  1.   

    一般由dtd和schema来定义和验证文档, DTD语法比较繁复,所以我最开始就没学, 一般是用schema.
    第二个问题,因为不熟dtd,所以没法给区别,你直接gg吧
    第三个,最常用的是xmldom, 当然还有其它的,不太了解
      

  2.   

    a: 两种形式 dtd  schema,
    b: 本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本目的),
    c:有DOM,SAX,STAX等 DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问SAX:不现于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问 STAX:Streaming API for XML (StAX)