Here is my sample schema employee.xsd
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="employee">
<xs:complexType>
<xs:sequence>
<xs:element name="info">
<xs:complexType>
<xs:sequence>
<xs:element name="lastname" type="xs:string"/>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="middlename" type="xs:string"/>
<xs:element name="age" type="xs:integer"/>
<xs:element name="sex" type="xs:string"/>
<xs:element name="position" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
next is my sample xml file employee.xml
<?xml version="1.0"?>
<employee>
<info>
<lastname>jones</lastname>
<firstname>daniel</firstname>
<middlename>warren</middlename>
<age>25</age>
<sex>M</sex>
<position>Manager</position>
</info>
</employee>
and here is my sample code used to validate my xml based on the schema
$xml = new DOMDocument();
$xml->load('./employee.xml');
if (!$xml->schemaValidate('./employee.xsd')) {
echo "invalid<p/>";
}
else {
echo "validated<p/>";
}
My problem is it only accepts one record of employee info.
Therefore when a xml file contains 3 records of employee info it prints invalid.
So does it means my schema only accepts 1 record of employee info at a time?
How can I update my schema so it will accept multiple records per employee info?
Thanks