在1998年w3cxml1.0推荐标准发布之后,xml就开始变得很流行。sun公司就是在那时候规范java community process (jcp),同时jaxp(jsr-05)的第一版在2000早些时候发布了。这个版本得到了很多工业集团的支持,譬如(以年月次序排列)bea systems, fujitsu limited, hewlett-packard, ibm, netscape communications, oracle, and sun microsystems, inc.
jaxp (全称java api for xml parsing)的可插拔性(pluggability)在开发社区里引起很大的轰动。这点也是jaxp的精华所在。开发人员可以编写自己的xml处理器,只要它符合jaxp的apis,这样底层不同的xml处理器可以任意切换而不用改应用程序的代码。
那jaxp到底是什么呢?首先 这个p有点迷惑,它代表parsing还是processing呢?
因为jaxp1.0的时候只支持解析(parsing),所以jaxp全称应该是java api for xml parsing.
但在jaxp1.1的时候,xsl-t被推荐用作xml的转换(transformation)处理。很遗憾,当时w3c xlt-t的标准规范(specification)里没有提供任何用来转换(transformation)处理的apis。因此jaxp1.1的专家组推荐了一组apis叫transformation api for xml (trax)。
从此jaxp就叫java api for xml processing. jaxp通过逐步进化,支持的东西也越来越多
不仅仅是解析xml文件(譬如在解析文档的时候根据schema校验有效性,根据预解析的schema来校验文档有效性,计算xpath 表达式等等)。
由于底层用来处理xml文档的可插拔的processor是任意编写的,只要它符合jaxp的规范,因此jaxp 是一个轻量级的处理xml文件的处理apis。
官方地址:http://jcp.org/aboutjava/communityprocess/maintenance/jsr206/
闽公网安备 35060202000074号