项目工作总结 XML Schema(标准解读)
最近在做NetConf相关开发工作,其中很重要的一块是XML解析,项目也需要支持Schema,因此前段时间整理了Schema的两部分标准,只不过整理文档是无法带出来的,所以就在此把Schema相关的内容简单介绍其标准之后,以如何应用的方式记录下来,以供以后使用时参考。在后续的部分,我还将整理NetConf相关标准,作为总结。
一、总体概述
XML Schema的标准分为两部分Part 1: Structure 和Part 2:Data Type. Part 2部分描述了Schema中的数据类型定义、Schema支持的内置数据类型和数据类型相关的Facets;Part 1则描述了一组用于定义xml文档结构的Schema组件、使用组件的语法、组件的校验方法。
Part 2 中对Schema数据类型的定义是一个三元组(Value space、Lexical space、Facets),在这里不对这些名字进行翻译,使用原称为。
Value space就是该数据类型所能取值的集合;
Lexical space是该数据类型的字面表示形式的集合;例如对于Float类型,它可能写作25.2的形式,也可以写作2.52E1,这就是该float值的两种lexical value。
Facet是数据类型的方面,用于刻画数据类型特征。在标准中,主要分为两类,一类facets用于定义数据类型,称为fundamental facets,一类用于描述数据类型的取值范围,称为constraining facets。facets都是对数据类型value space的约束。
二、Schema支持的内置数据类型
Schema支持的内置数据类型参见http://www.w3.org/TR/xmlschema11-2/#built-in-datatypes 。
三、Schema中的Facets
1. fundamental facets:
这一类facets只出现在simpleType的定义中,且只出现一次。有四类:
ordered:描述值的顺序关系(全序、偏序、无序)
bounded:描述值的界限
cardinality:描述valuespace的规模
numeric:描述value的可数性,即是否数值
2. constraining facets
这一类facets在进行类型派生的时候值可以改变。对于每一个facet并不是可以用于任何一种数据类型,具体可以参见schema实现文档。
length,maxLength,minLength:用于约束字符串类型的长度
pattern:指定一个正则表达式,描述值应该具有的lexical value
maxInclusive,minInclusive,maxExclusive,minExcl
相关文档:
问题描述:
jboss应用服务器,使用spring
无法启动服务,错误日志:
[org.apache.xerces.jaxp.DocumentBuilderFactoryImpl@155d3a3] does not
support XML Schema. Are you running on Java 1.4 or below with Apache
Crimson? Upgrade to Apache Xerces (or Java 1.5) for full XSD ......
public static IList<News> GetAllNews()
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load("你读取的地址:例如 ......
工具:myeclipse 6.5
json中文官方:http://www.json.org/json-zh.html
新建项目webs,在WebRoot下新建目录json
xml的解析方式:
------------------------------------------------------------------
1.新建NewFile.xml
<?xml version="1.0" encoding="UTF-8"?>
<userinfo>
  ......
function init() {
var viewChartID = 0;
var viewChartSum = "" ;
reportName = document.getElementById("reportName").value;
xmlDoc=loadXMLDoc("./charreport/xml/viewChart.xml");
x=xmlDoc.getElementsByTagName('viewChart')[0].childNodes;
for (i=0;i<x.length;i++ ......