zoukankan      html  css  js  c++  java
  • 使用Apache xercesc验证XML文件的Schema

     

    -------------------------booklist.xsd----------------------------------------

    <?xml version="1.0" encoding="GB2312"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
     <xs:element name="booklist">
      <xs:complexType>
       <xs:sequence>
        <xs:element name="book" type="bookType" maxOccurs="unbounded"/>
       </xs:sequence>
      </xs:complexType>
     </xs:element>
     <xs:complexType name="bookType">
      <xs:sequence>
       <xs:element name="ISBN" type="xs:string"/>
       <xs:element name="title" type="xs:string"/>
       <xs:element name="authorlist" type="authorlistType"/>
       <xs:element name="price" type="xs:decimal"/>
      </xs:sequence>
      <xs:attribute name="classify" use="required">
       <xs:simpleType>
        <xs:restriction base="xs:string">
         <xs:enumeration value="社会科学"/>
         <xs:enumeration value="自然科学"/>
        </xs:restriction>
       </xs:simpleType>
      </xs:attribute>
     </xs:complexType>
     <xs:complexType name="authorlistType">
      <xs:sequence maxOccurs="4">
       <xs:element name="author" type="xs:string"/>
      </xs:sequence>
     </xs:complexType>
    </xs:schema>

    -------------------------------booklist.xml--------------------------------

    <?xml version="1.0" encoding="GB2312"?>
    <booklist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="booklist.xsd">
     <book classify="自然科学">
      <ISBN>7-302-12066-8</ISBN>
      <title>JAVA使用教程</title>
      <authorlist>
       <author>Herbert Scihldt</author>
       <author>马海军</author>
      </authorlist>
      <price>64.00</price>
     </book>
     <book classify="社会科学">
      <ISBN>7-5037-1978</ISBN>
      <title>投资学</title>
      <authorlist>
       <author>张中华</author>
       <author>谢老三</author>
      </authorlist>
      <price>19.00</price>
     </book>
    </booklist>
    使用如下命令行参数验证booklist.xml是否符合booklist.xsd

    booklist.xml booklist.xsd

    如果验证成功提示验证成功,否则出现异常

  • 相关阅读:
    2.分布式锁
    1. junit用法,before,beforeClass,test,after, afterClass的执行顺序
    GC算法
    记一次"截图"功能的前期调研过程!
    程序员转行手册!
    Yarn详细的工作流程
    Yarn的三种调度器(Scheduler)
    Hadoop序列化与Java序列化的区别
    MapReduce执行过程
    从普通登录到单点登录图例
  • 原文地址:https://www.cnblogs.com/zhangyunlin/p/6167969.html
Copyright © 2011-2022 走看看