<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> xmlns:sch="http://www.ascc.net/xml/schematron" elementFormDefault="qualified" > <xs:element name="books"> <xs:complextype> <xs:sequence> ;P <xs:element name="book" type="bookType" maxoccurs="unbounded"> <xs:annotation> <xs:appinfo> <sch:pattern id="onLoanTests" xmlns:sch="http://purl.oclc.org/dsdl/schematron"> <sch:rule context="book"> <sch:report test="@on-loan and not(@return-date)"> Every book that is on loan must have a return date </sch:report> </sch:rule> </sch:pattern> </xs:appinfo> </xs:annotation> </xs:element> </xs:sequence> </xs:complextype> </xs:element> <xs:complextype name="bookType"> <xs:sequence> <xs:element name="title" type="xs:string" /> <xs:element name="author" type="xs:string" /> <xs:element name="publication-date" type="xs:string" /> </xs:sequence> <xs:attribute name="publisher" type="xs:string" use="required" /> <xs:attribute name="on-loan" type="xs:string" use="required" /> <xs:attribute name="return-date" type="xs:string" use="optional" /> </xs:complextype> </xs:schema>
<books> <book publisher="ddd" on-loan="sdsd"> <title>idan title</title> <author>idan author</author> <publication-date>idan date</publication-date> </book> </books>
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)