<?xml version="1.0"?>
<note
xmlns="http://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body xml:lang="en"><div></div></body>
</note>
的XSD:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd">
</xs:import>
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body">
<xs:complexType mixed="true">
<xs:complexContent>
<xs:extension base="someType">
<xs:attribute ref="xml:lang" use="required">
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="someType" mixed="true">
<xs:sequence>
<xs:any maxOccurs="unbounded" minOccurs="1" processContents="skip"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
經過this和它的作品。 但是,這並不在Marklogic工作,錯誤的是:
XDMP-VALIDATEMISSINGELT: (err:XQDY0027) validate lax { $node } -- Missing required elements: Expected ((any(skip,!())+),(any(skip,!())+)) at fn:doc("d:/xml.xml")/*:note/*:body using schema "/schemas/xsd.xsd"
我的目的是讓HTML內容的體內強制性的發生是這樣的:
<body xml:lang="en"><div></div></body>
是我的XSD是架構數據庫。我需要在some_text 以上代碼中添加模式檢查,這些檢查與上述代碼中的相同,但在Marklogic中失敗,表示錯誤XDMP-VALIDATEMISSINGELT:(err: XQDY0027)validate lax {$ node} - 缺少必需的元素:Expected(any(skip,!())*,any(skip,!())+)。 –
Ranvir
我已經編輯了精確信息的問題,只需檢查這個免費格式化與驗證的例子,但是當我加載到marklogic,它不起作用。 - > xquery版本「1.0-ml」; 設$節點:= xdmp:文檔獲取( 「d:/xml.xml」) 回報 嘗試{xdmp:文檔插入( 「myxml/xml.xml」,驗證不嚴{$節點})} catch($ e){「驗證失敗:」, $ e/error:format-string/text()} – Ranvir