<?xml version="1.0" encoding="utf-8"?>
<!-- edited with XMLSPY v5 U (http://www.xmlspy.com) by Paul Spencer (Boynings Consulting) -->
<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Paul Spencer (alphaXML Ltd.) -->
<xsd:schema targetNamespace="urn:oasis:names:tc:evs:schema:eml" xmlns="urn:oasis:names:tc:evs:schema:eml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0" id="430">
	<xsd:annotation>
		<xsd:documentation>
			Changes from version 0.3 to 1.0 (2002-10-10):
				None
			Changes from version 0.2 to 0.3 (2002-09-24)
				TransactionId removed (now in emlcore)
				ElectionEventName changed to Event
				Ballots restriction has been re-applied. This brings in the current version of Ballots from 410
				Under Ballot, the choice between ElectionRuleId and Voter has a maxOccurs of 0
			Changes from version 0.1 to 0.2:
				VoterIdentification altered to use the new definition of VoterIdentificationStructure in emlcore v0.5
		</xsd:documentation>
	</xsd:annotation>
	<xsd:include schemaLocation="emlcore.xsd"/>
	<xsd:include schemaLocation="410-ballots.xsd"/>
	<xsd:element name="AuthenticationReply">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Authenticated" type="YesNoType"/>
				<xsd:element name="Remark" type="MessagesStructure" minOccurs="0"/>
				<xsd:element name="Ballots" minOccurs="0">
					<xsd:annotation>
						<xsd:documentation>Restrictions are:
 Only one Ballot element
 The xsd:choice with ElectionRuleId and Voter cannot occur</xsd:documentation>
					</xsd:annotation>
					<xsd:complexType>
						<xsd:complexContent>
							<xsd:restriction base="BallotsStructure">
								<xsd:sequence>
									<xsd:element ref="Event"/>
									<xsd:element name="EventDescription" type="MessagesStructure" minOccurs="0"/>
									<xsd:element name="Ballot">
										<xsd:complexType>
											<xsd:sequence>
												<xsd:element ref="ReportingUnitName" minOccurs="0"/>
												<xsd:choice>
													<xsd:element name="BallotId"/>
													<xsd:sequence>
														<xsd:element name="Election" maxOccurs="unbounded">
															<xsd:complexType>
																<xsd:sequence>
																	<xsd:element ref="ElectionName"/>
																	<xsd:element name="Description" type="MessagesStructure" minOccurs="0"/>
																	<xsd:element name="Contest">
																		<xsd:complexType>
																			<xsd:sequence>
																				<xsd:element ref="ContestName"/>
																				<xsd:element name="Qualified" minOccurs="0">
																					<xsd:complexType>
																						<xsd:simpleContent>
																							<xsd:extension base="YesNoType">
																								<xsd:attribute name="Reason" type="xsd:string" use="required"/>
																							</xsd:extension>
																						</xsd:simpleContent>
																					</xsd:complexType>
																				</xsd:element>
																				<xsd:element name="VotingInformation" type="MessagesStructure" minOccurs="0"/>
																				<xsd:element name="Rotation" type="YesNoType" minOccurs="0"/>
																				<xsd:element ref="VotingMethod" minOccurs="0"/>
																				<xsd:element ref="MaxVotes" minOccurs="0"/>
																				<xsd:element ref="MinVotes" minOccurs="0"/>
																				<xsd:element name="MaxWriteIn" type="xsd:nonNegativeInteger" minOccurs="0"/>
																				<xsd:element name="Options">
																					<xsd:complexType>
																						<xsd:choice>
																							<xsd:element ref="Candidate" maxOccurs="unbounded"/>
																							<xsd:sequence>
																								<xsd:element name="Option" maxOccurs="unbounded">
																									<xsd:complexType>
																										<xsd:sequence>
																											<xsd:element ref="OptionName"/>
																											<xsd:element name="Description" type="MessagesStructure" minOccurs="0"/>
																										</xsd:sequence>
																									</xsd:complexType>
																								</xsd:element>
																							</xsd:sequence>
																						</xsd:choice>
																						<xsd:attribute name="Contested" type="YesNoType" use="optional"/>
																					</xsd:complexType>
																				</xsd:element>
																				<xsd:element name="Messages" type="MessagesStructure" minOccurs="0" maxOccurs="unbounded"/>
																				<xsd:any namespace="##any" minOccurs="0"/>
																			</xsd:sequence>
																			<xsd:attribute name="DisplayOrder" type="xsd:positiveInteger" use="optional"/>
																		</xsd:complexType>
																	</xsd:element>
																	<xsd:element name="Messages" type="MessagesStructure" minOccurs="0" maxOccurs="unbounded"/>
																</xsd:sequence>
															</xsd:complexType>
														</xsd:element>
														<xsd:element name="BallotId" minOccurs="0"/>
														<xsd:choice minOccurs="0" maxOccurs="0">
															<xsd:element ref="ElectionRuleId"/>
															<xsd:element name="Voter" maxOccurs="unbounded">
																<xsd:complexType>
																	<xsd:choice>
																		<xsd:sequence>
																			<xsd:element name="VoterIdentification">
																				<xsd:complexType>
																					<xsd:complexContent>
																						<xsd:restriction base="VoterIdentificationStructure">
																							<xsd:sequence>
																								<xsd:element ref="VoterName" minOccurs="0"/>
																								<xsd:element name="ElectoralAddress" type="AddressStructure" minOccurs="0" maxOccurs="0">
																									<xsd:annotation>
																										<xsd:documentation>This is the address that gives the voter the right to vote</xsd:documentation>
																									</xsd:annotation>
																								</xsd:element>
																								<xsd:element name="PreviousElectoralAddress" type="AddressStructure" minOccurs="0" maxOccurs="0"/>
																								<xsd:choice minOccurs="0">
																									<xsd:element ref="VToken"/>
																									<xsd:element ref="VTokenQualified"/>
																								</xsd:choice>
																								<xsd:element name="Id" minOccurs="0" maxOccurs="unbounded">
																									<xsd:complexType>
																										<xsd:simpleContent>
																											<xsd:extension base="xsd:string">
																												<xsd:attribute name="Type" type="xsd:string" use="required"/>
																											</xsd:extension>
																										</xsd:simpleContent>
																									</xsd:complexType>
																								</xsd:element>
																							</xsd:sequence>
																						</xsd:restriction>
																					</xsd:complexContent>
																				</xsd:complexType>
																			</xsd:element>
																			<xsd:element name="VoterContact" type="ContactDetailsStructure" minOccurs="0"/>
																		</xsd:sequence>
																		<xsd:element name="VoterContact" type="ContactDetailsStructure"/>
																		<xsd:element ref="Proxy" minOccurs="0"/>
																	</xsd:choice>
																</xsd:complexType>
															</xsd:element>
														</xsd:choice>
													</xsd:sequence>
												</xsd:choice>
											</xsd:sequence>
										</xsd:complexType>
									</xsd:element>
									<xsd:element name="Messages" type="MessagesStructure" minOccurs="0" maxOccurs="unbounded"/>
									<xsd:any namespace="##any" minOccurs="0"/>
								</xsd:sequence>
							</xsd:restriction>
						</xsd:complexContent>
					</xsd:complexType>
				</xsd:element>
				<xsd:any namespace="##any" minOccurs="0"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
</xsd:schema>
