『XML』XMLXSD命名空间解析

『XML』XMLXSD命名空间解析,第1张

观察下面这个xml文件(spring框架文件头):

假设有如下情况:

有个 table.xml 文件,在表格中记载着歌词:

还有另外一个段闭敏 table.xml 文件,记录着一张桌子的信息:

如果我们工作需要同时使用这两个xml文件,这样就会出现2个 <table>元素,必然会造成解析错误,无法正常处理。<br />

github 就是命名空间前缀,它主要是代指后面命名空间的,不用每次都写那么长,用前缀就可以握枝了。

回到 table 的问题,在xml文件中声明了命名空间后,可以写成如下形式

以及

这样就对 table 以及其子元素进行了区分,不会造成同名冲突问题。

xsd文件其实也是xml文件,它的作用态察是校验一个xml文件的格式,dtd文件也是同样作用,但是xsd功能更加强大,语法更加优雅。

这是一个<schema>标签,它是xsd的核心标签:

以上就是xml/xsd文件命名空间配置介绍。

参考资料:

<br /><br />

首先XSD文件是用来规拦卜仿定XML格式的样式文件,

用法是在XML文件头中引入XSD文件就可以了简纤

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="XSD文件的名称"

如果想用DOM4J解析取到指定的值

可以这样做

Document doc = new SAXReader().read("XML文件名")

Element root = doc.getRootElement()//得到文件的根目录

Element ele = (Element)root.selectSingleNode("这里的参数弊则是XPATH")

一、Xerces简介

Xerces是一个开放源代码的XML语法分析器。Xerces-C++ 的前身是 IBM 的 XML4C 项目。XML4C 和 XML4J 是两个并列的项目,而 XML4J 是 Xerces-J的前身。IBM 将这两个项目的源代码让与 Apache 软件基金会(Apache Software Foundation),他们将其分别改名为 Xerces-C++ 和 Xerces-J。从JDK1.5以后,Xerces就成了JDK的XML默认实现。

Xerces-C++ (通常也称为:Xerces-C)是一套健壮、强大(同时也很庞大)的 XML 解析库,它提供了验证,以及 SAX 和 DOM API。XML 验证在文档类型定义(Document Type Definition,DTD)方面有很好的支持

二、安装xerces

windows下安装稍微麻烦一点,所以在此主要讲解下windows下安装使用xerces的方法,linux下安装的方法比较多,大家可以在网上找找。

Xercesc在windows和linux下都需要先编译后使用。在 UNIX或备衡者类UNIX(比如GUN/Linux、Max OS X、Cygwin、MinGW-MSYS)的环境下编译时,xerces-c均采用GNU automake-base风格的编译过程,这一过程通常分为三步:configure(配置)、make(编译)、make install(安装),这些步骤都需要在msys系统中进行。[1]

我的开发工具选用的是eclipse-cpp,需要安装msys插件,安装后进入msys文件夹(注意msys文件夹在你的开发工具目录下),直接运行msys.bat批处理文件即可运行msys,注意msys是UNIX风格与Windows风格的杂合体,请特别注意前述输入命令中,‘/’的方向与Windows下用于表达路径的‘\’方向正好相反,另外, C字母之后也没有Windows通常用于表示盘符‘:’。

下面详细介绍下安装的过程以及可能出现的滚咐问题和解决方法:

1、 configure(配置)

运行msys,进入Xercesc所在目录,在msys中输入以下命令(注意,实际输入时仅一行):

./configure --enable-netaccessor-winsock --enable-transcoder-windows LDFLAGS=-no-undefined --with-PACKAGE

这个配置命令的时间可能需要5分钟左右,可以在msys屏幕中看到一些配置的详细情况,如果在屏幕中没有出现error错误,表示大滚纯配置成功


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12330499.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存