加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

sedna不支持xml schema

发布时间:2020-12-16 09:04:05 所属栏目:百科 来源:网络整理
导读:book.xsd: ?xml version="1.0" encoding="utf-8"?xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xs:complexType name="book_type" xs:sequence xs:element name="name" type="xs:string" / xs:element name="autho

book.xsd:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:complexType name="book_type">
        <xs:sequence>
            <xs:element name="name" type="xs:string" />
            <xs:element name="author" type="xs:string" />
            <xs:element name="price" type="xs:unsignedInt" />
            <xs:element name="date" type="xs:string" />
        </xs:sequence>
    </xs:complexType>

    <xs:element name="books">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="book" type="book_type" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
        </xs:complexType>
    </xs:element>

</xs:schema>

book.xml:

<?xml version="1.0" encoding="utf-8" ?>
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xsi:noNamespaceSchemaLocation="book.xsd" >
    <book>
        <name>The Call Of Wild</name>
        <author>Jack London</author>
        <price>32</price>
        <date>2015-7-6</date>
    </book>
    <book>
        <name>Wuthering Heights</name>
        <author>Emily Bronte</author>
        <price>40</price>
        <date>2015-7-5</date>
    </book>
</books>

用xmllint校验一下book.xml是否遵循book.xsd的规格:
[xuzhina@localhost bin]$ xmllint --schema book.xsd book.xml
<?xml version="1.0" encoding="utf-8"?>
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="book.xsd">
	<book>
		<name>The Call Of Wild</name>
		<author>Jack London</author>
		<price>32</price>
		<date>2015-7-6</date>
	</book>
	<book>
		<name>Wuthering Heights</name>
		<author>Emily Bronte</author>
		<price>40</price>
		<date>2015-7-5</date>
	</book>
</books>
book.xml validates

修改一下book.xml的price:

<?xml version="1.0" encoding="utf-8"?>
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="book.xsd">
	<book>
		<name>The Call Of Wild</name>
		<author>Jack London</author>
		<price>3w2</price>
		<date>2015-7-6</date>
	</book>
	<book>
		<name>Wuthering Heights</name>
		<author>Emily Bronte</author>
		<price>hello</price>
		<date>2015-7-5</date>
	</book>
</books>

结果:
[xuzhina@localhost bin]$ xmllint --schema book.xsd book.xml
<?xml version="1.0" encoding="utf-8"?>
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="book.xsd">
	<book>
		<name>The Call Of Wild</name>
		<author>Jack London</author>
		<price>3w2</price>
		<date>2015-7-6</date>
	</book>
	<book>
		<name>Wuthering Heights</name>
		<author>Emily Bronte</author>
		<price>hello</price>
		<date>2015-7-5</date>
	</book>
</books>
book.xml:7: element price: Schemas validity error : Element 'price': '3w2' is not a valid value of the atomic type 'xs:unsignedInt'.
book.xml:13: element price: Schemas validity error : Element 'price': 'hello' is not a valid value of the atomic type 'xs:unsignedInt'.
book.xml fails to validate

现在把book.xml导入到sedna的books数据库,看看sedna会不会验证xml schema:
[xuzhina@localhost bin]$ ./se_term -query "LOAD 'book.xml' 'book'" books
Bulk load succeeded

结论:sedna不支持xml schema校验。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读