<?xml version="1.0" encoding="UTF-8"?>
<!-- Version 1.0-50, January 11, 2016, NIST Election Results CDF Specification, National Institute of Standards and Technology -->
<xsd:schema xmlns="http://www.nist.gov/itl/voting/1500-100/NIST_V1_election_results.xsd" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.nist.gov/itl/voting/1500-100/NIST_V1_election_results.xsd" elementFormDefault="qualified" version="1.0">
	<!-- ========== Imports ========== -->
	<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/2000/09/xmldsig#"/>
	<!-- ========== Roots ========== -->
	<xsd:element name="ElectionReport" type="ElectionReport"/>
	<!-- ========== Primitives ========== -->
	<xsd:simpleType name="HtmlColorString">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="[0-9a-f]{6}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ShortString">
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="16"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="TimeWithZone">
		<xsd:restriction base="xsd:time">
			<xsd:pattern value="(([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]|(24:00:00))(Z|[+-]((0[0-9]|1[0-3]):[0-5][0-9]|14:00))"/>
		</xsd:restriction>
	</xsd:simpleType>
	<!-- ========== Enumerations ========== -->
	<xsd:simpleType name="BallotMeasureType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="ballot-measure"/>
			<xsd:enumeration value="initiative"/>
			<xsd:enumeration value="referendum"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CandidatePostElectionStatus">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="advanced-to-runoff"/>
			<xsd:enumeration value="projected-winner"/>
			<xsd:enumeration value="winner"/>
			<xsd:enumeration value="withdrawn"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CandidatePreElectionStatus">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="filed"/>
			<xsd:enumeration value="qualified"/>
			<xsd:enumeration value="withdrawn"/>
			<xsd:enumeration value="write-in"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CountItemStatus">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="completed"/>
			<xsd:enumeration value="in-process"/>
			<xsd:enumeration value="not-processed"/>
			<xsd:enumeration value="unknown"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CountItemType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="absentee"/>
			<xsd:enumeration value="absentee-fwab"/>
			<xsd:enumeration value="absentee-in-person"/>
			<xsd:enumeration value="absentee-mail"/>
			<xsd:enumeration value="early"/>
			<xsd:enumeration value="election-day"/>
			<xsd:enumeration value="provisional"/>
			<xsd:enumeration value="total"/>
			<xsd:enumeration value="uocava"/>
			<xsd:enumeration value="write-in"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="DayType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="all"/>
			<xsd:enumeration value="sunday"/>
			<xsd:enumeration value="monday"/>
			<xsd:enumeration value="tuesday"/>
			<xsd:enumeration value="wednesday"/>
			<xsd:enumeration value="thursday"/>
			<xsd:enumeration value="friday"/>
			<xsd:enumeration value="saturday"/>
			<xsd:enumeration value="weekday"/>
			<xsd:enumeration value="weekend"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="DeviceType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="electronic"/>
			<xsd:enumeration value="lever"/>
			<xsd:enumeration value="manual-count"/>
			<xsd:enumeration value="mixed-systems"/>
			<xsd:enumeration value="opscan-central"/>
			<xsd:enumeration value="opscan-precinct"/>
			<xsd:enumeration value="punch-card"/>
			<xsd:enumeration value="unknown"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ElectionType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="general"/>
			<xsd:enumeration value="partisan-primary-closed"/>
			<xsd:enumeration value="partisan-primary-open"/>
			<xsd:enumeration value="primary"/>
			<xsd:enumeration value="runoff"/>
			<xsd:enumeration value="special"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="GeoSpatialFormat">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="geo-json"/>
			<xsd:enumeration value="gml"/>
			<xsd:enumeration value="kml"/>
			<xsd:enumeration value="shp"/>
			<xsd:enumeration value="wkt"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="IdentifierType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="fips"/>
			<xsd:enumeration value="local-level"/>
			<xsd:enumeration value="national-level"/>
			<xsd:enumeration value="ocd-id"/>
			<xsd:enumeration value="state-level"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="OfficeTermType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="full-term"/>
			<xsd:enumeration value="unexpired-term"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ReportDetailLevel">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="precinct-level"/>
			<xsd:enumeration value="summary-contest"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ReportingUnitType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="ballot-batch"/>
			<xsd:enumeration value="ballot-style-area"/>
			<xsd:enumeration value="borough"/>
			<xsd:enumeration value="city"/>
			<xsd:enumeration value="city-council"/>
			<xsd:enumeration value="combined-precinct"/>
			<xsd:enumeration value="congressional"/>
			<xsd:enumeration value="county"/>
			<xsd:enumeration value="county-council"/>
			<xsd:enumeration value="drop-box"/>
			<xsd:enumeration value="judicial"/>
			<xsd:enumeration value="municipality"/>
			<xsd:enumeration value="polling-place"/>
			<xsd:enumeration value="precinct"/>
			<xsd:enumeration value="school"/>
			<xsd:enumeration value="special"/>
			<xsd:enumeration value="split-precinct"/>
			<xsd:enumeration value="state"/>
			<xsd:enumeration value="state-house"/>
			<xsd:enumeration value="state-senate"/>
			<xsd:enumeration value="town"/>
			<xsd:enumeration value="township"/>
			<xsd:enumeration value="utility"/>
			<xsd:enumeration value="village"/>
			<xsd:enumeration value="vote-center"/>
			<xsd:enumeration value="ward"/>
			<xsd:enumeration value="water"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ResultsStatus">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="certified"/>
			<xsd:enumeration value="correction"/>
			<xsd:enumeration value="pre-election"/>
			<xsd:enumeration value="recount"/>
			<xsd:enumeration value="unofficial-complete"/>
			<xsd:enumeration value="unofficial-partial"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="VoteVariation">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="1-of-m"/>
			<xsd:enumeration value="approval"/>
			<xsd:enumeration value="borda"/>
			<xsd:enumeration value="cumulative"/>
			<xsd:enumeration value="majority"/>
			<xsd:enumeration value="n-of-m"/>
			<xsd:enumeration value="plurality"/>
			<xsd:enumeration value="proportional"/>
			<xsd:enumeration value="range"/>
			<xsd:enumeration value="rcv"/>
			<xsd:enumeration value="super-majority"/>
			<xsd:enumeration value="other"/>
		</xsd:restriction>
	</xsd:simpleType>
	<!-- ========== Elements ========== -->
	<xsd:complexType name="AnnotatedString">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attribute name="annotation" type="ShortString"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="BallotMeasureContest">
		<xsd:complexContent>
			<xsd:extension base="Contest">
				<xsd:sequence>
					<xsd:element name="ConStatement" type="InternationalizedText" minOccurs="0"/>
					<xsd:element name="EffectOfAbstain" type="InternationalizedText" minOccurs="0"/>
					<xsd:element name="FullText" type="InternationalizedText" minOccurs="0"/>
					<xsd:element name="InfoUri" type="xsd:anyURI" minOccurs="0"/>
					<xsd:element name="PassageThreshold" type="InternationalizedText" minOccurs="0"/>
					<xsd:element name="ProStatement" type="InternationalizedText" minOccurs="0"/>
					<xsd:element name="SummaryText" type="InternationalizedText" minOccurs="0"/>
					<xsd:element name="Type" type="BallotMeasureType" minOccurs="0"/>
					<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="BallotMeasureSelection">
		<xsd:complexContent>
			<xsd:extension base="BallotSelection">
				<xsd:sequence>
					<xsd:element name="Selection" type="InternationalizedText"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="BallotSelection" abstract="true">
		<xsd:sequence>
			<xsd:element name="SequenceOrder" type="xsd:integer" minOccurs="0"/>
			<xsd:element name="VoteCountsCollection" minOccurs="0" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="VoteCounts" type="VoteCounts" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="BallotStyle">
		<xsd:sequence>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="GpUnitIds" type="xsd:IDREFS"/>
			<xsd:element name="ImageUri" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="OrderedContest" type="OrderedContest" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="PartyIds" type="xsd:IDREFS" minOccurs="0"/>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="Candidate">
		<xsd:sequence>
			<xsd:element name="BallotName" type="InternationalizedText"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="FileDate" type="xsd:date" minOccurs="0"/>
			<xsd:element name="IsIncumbent" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="IsTopTicket" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="PartyId" type="xsd:IDREF" minOccurs="0"/>
			<xsd:element name="PersonId" type="xsd:IDREF" minOccurs="0"/>
			<xsd:element name="PostElectionStatus" type="CandidatePostElectionStatus" minOccurs="0"/>
			<xsd:element name="PreElectionStatus" type="CandidatePreElectionStatus" minOccurs="0"/>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="CandidateContest">
		<xsd:complexContent>
			<xsd:extension base="Contest">
				<xsd:sequence>
					<xsd:element name="NumberElected" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="OfficeIds" type="xsd:IDREFS" minOccurs="0"/>
					<xsd:element name="PrimaryPartyIds" type="xsd:IDREFS" minOccurs="0"/>
					<xsd:element name="VotesAllowed" type="xsd:integer"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="CandidateSelection">
		<xsd:complexContent>
			<xsd:extension base="BallotSelection">
				<xsd:sequence>
					<xsd:element name="CandidateIds" type="xsd:IDREFS"/>
					<xsd:element name="EndorsementPartyIds" type="xsd:IDREFS" minOccurs="0"/>
					<xsd:element name="IsWriteIn" type="xsd:boolean" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Coalition">
		<xsd:complexContent>
			<xsd:extension base="Party">
				<xsd:sequence>
					<xsd:element name="ContestIds" type="xsd:IDREFS" minOccurs="0"/>
					<xsd:element name="PartyIds" type="xsd:IDREFS" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ContactInformation">
		<xsd:sequence>
			<xsd:element name="AddressLine" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Directions" type="InternationalizedText" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Email" type="AnnotatedString" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Fax" type="AnnotatedString" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="LatLng" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Latitude" type="xsd:float" minOccurs="1" maxOccurs="1"/>
						<xsd:element name="Longitude" type="xsd:float" minOccurs="1" maxOccurs="1"/>
						<xsd:element name="Source" type="xsd:string" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
					<xsd:attribute name="label" type="xsd:string"/>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Name" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Phone" type="AnnotatedString" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Schedule" type="Schedule" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Uri" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attribute name="label" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="Contest" abstract="true">
		<xsd:sequence>
			<xsd:element name="Abbreviation" type="xsd:string" minOccurs="0"/>
			<xsd:element name="BallotSelection" type="BallotSelection" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="BallotSubTitle" type="InternationalizedText" minOccurs="0"/>
			<xsd:element name="BallotTitle" type="InternationalizedText" minOccurs="0"/>
			<xsd:element name="CountStatus" type="CountStatus" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="ElectoralDistrictId" type="xsd:IDREF"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="HasRotation" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="Name" type="xsd:string"/>
			<xsd:element name="SequenceOrder" type="xsd:integer" minOccurs="0"/>
			<xsd:element name="SubUnitsReported" type="xsd:integer" minOccurs="0"/>
			<xsd:element name="SummaryCounts" type="SummaryCounts" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="TotalSubUnits" type="xsd:integer" minOccurs="0"/>
			<xsd:element name="VoteVariation" type="VoteVariation" minOccurs="0"/>
			<xsd:element name="OtherVoteVariation" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="CountStatus">
		<xsd:sequence>
			<xsd:element name="Status" type="CountItemStatus"/>
			<xsd:element name="Type" type="CountItemType"/>
			<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Counts" abstract="true">
		<xsd:sequence>
			<xsd:element name="Device" type="Device" minOccurs="0"/>
			<xsd:element name="GpUnitId" type="xsd:IDREF" minOccurs="0"/>
			<xsd:element name="IsSuppressedForPrivacy" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="Type" type="CountItemType" minOccurs="0"/>
			<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Device">
		<xsd:sequence>
			<xsd:element name="Manufacturer" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Model" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Type" type="DeviceType" minOccurs="0"/>
			<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Election">
		<xsd:sequence>
			<xsd:element name="BallotStyleCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="BallotStyle" type="BallotStyle" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="CandidateCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Candidate" type="Candidate" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ContactInformation" type="ContactInformation" minOccurs="0"/>
			<xsd:element name="ContestCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Contest" type="Contest" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="CountStatus" type="CountStatus" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="ElectionScopeId" type="xsd:IDREF"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="Name" type="InternationalizedText"/>
			<xsd:element name="StartDate" type="xsd:date"/>
			<xsd:element name="EndDate" type="xsd:date"/>
			<xsd:element name="Type" type="ElectionType"/>
			<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ElectionAdministration">
		<xsd:sequence>
			<xsd:element name="ContactInformation" type="ContactInformation" minOccurs="0"/>
			<xsd:element name="ElectionOfficialPersonIds" type="xsd:IDREFS" minOccurs="0"/>
			<xsd:element name="Name" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ElectionReport">
		<xsd:sequence>
			<xsd:element name="Election" type="Election" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="Format" type="ReportDetailLevel"/>
			<xsd:element name="GeneratedDate" type="xsd:dateTime"/>
			<xsd:element name="GpUnitCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="GpUnit" type="GpUnit" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Issuer" type="xsd:string"/>
			<xsd:element name="IssuerAbbreviation" type="xsd:string"/>
			<xsd:element name="IsTest" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="Notes" type="xsd:string" minOccurs="0"/>
			<xsd:element name="OfficeCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Office" type="Office" maxOccurs="unbounded"/>
						<xsd:element name="OfficeGroup" type="OfficeGroup" minOccurs="0" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PartyCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Party" type="Party" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="PersonCollection" minOccurs="0" maxOccurs="1">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Person" type="Person" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="SequenceStart" type="xsd:integer"/>
			<xsd:element name="SequenceEnd" type="xsd:integer"/>
			<xsd:element name="Status" type="ResultsStatus"/>
			<xsd:element name="TestType" type="xsd:string" minOccurs="0"/>
			<xsd:element name="VendorApplicationId" type="xsd:string"/>
			<xsd:element ref="ds:Signature" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ExternalIdentifiers">
		<xsd:sequence>
			<xsd:element name="ExternalIdentifier" maxOccurs="unbounded">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Type" type="IdentifierType"/>
						<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
						<xsd:element name="Value" type="xsd:string"/>
					</xsd:sequence>
					<xsd:attribute name="label" type="xsd:string"/>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="label" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="GpUnit" abstract="true">
		<xsd:sequence>
			<xsd:element name="ComposingGpUnitIds" type="xsd:IDREFS" minOccurs="0"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="Name" type="xsd:string" minOccurs="0"/>
			<xsd:element name="SummaryCounts" type="SummaryCounts" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="Hours">
		<xsd:sequence>
			<xsd:element name="Day" type="DayType" minOccurs="0"/>
			<xsd:element name="StartTime" type="TimeWithZone"/>
			<xsd:element name="EndTime" type="TimeWithZone"/>
		</xsd:sequence>
		<xsd:attribute name="label" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="InternationalizedText">
		<xsd:sequence>
			<xsd:element name="Text" type="LanguageString" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attribute name="label" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="LanguageString">
		<xsd:simpleContent>
			<xsd:extension base="xsd:string">
				<xsd:attribute name="language" type="xsd:language" use="required"/>
			</xsd:extension>
		</xsd:simpleContent>
	</xsd:complexType>
	<xsd:complexType name="Office">
		<xsd:sequence>
			<xsd:element name="ContactInformation" type="ContactInformation" minOccurs="0"/>
			<xsd:element name="ElectoralDistrictId" type="xsd:IDREF" minOccurs="0"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="FilingDeadline" type="xsd:date" minOccurs="0"/>
			<xsd:element name="IsPartisan" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="Name" type="InternationalizedText"/>
			<xsd:element name="OfficeHolderPersonIds" type="xsd:IDREFS" minOccurs="0"/>
			<xsd:element name="Term" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="StartDate" type="xsd:date" minOccurs="0"/>
						<xsd:element name="EndDate" type="xsd:date" minOccurs="0"/>
						<xsd:element name="Type" type="OfficeTermType" minOccurs="0"/>
					</xsd:sequence>
					<xsd:attribute name="label" type="xsd:string"/>
				</xsd:complexType>
			</xsd:element>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="OfficeGroup">
		<xsd:sequence>
			<xsd:element name="Name" type="xsd:string"/>
			<xsd:element name="OfficeIds" type="xsd:IDREFS" minOccurs="0"/>
			<xsd:element name="SubOfficeGroup" type="OfficeGroup" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attribute name="label" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="OrderedContest">
		<xsd:sequence>
			<xsd:element name="ContestId" type="xsd:IDREF"/>
			<xsd:element name="OrderedBallotSelectionIds" type="xsd:IDREFS" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Party">
		<xsd:sequence>
			<xsd:element name="Abbreviation" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Color" type="HtmlColorString" minOccurs="0"/>
			<xsd:element name="ExternalIdentifiers" type="ExternalIdentifiers" minOccurs="0"/>
			<xsd:element name="LogoUri" type="xsd:anyURI" minOccurs="0"/>
			<xsd:element name="Name" type="InternationalizedText"/>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="PartyContest">
		<xsd:complexContent>
			<xsd:extension base="Contest"/>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="PartyRegistration">
		<xsd:sequence>
			<xsd:element name="Count" type="xsd:integer"/>
			<xsd:element name="PartyId" type="xsd:IDREF"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PartySelection">
		<xsd:complexContent>
			<xsd:extension base="BallotSelection">
				<xsd:sequence>
					<xsd:element name="PartyIds" type="xsd:IDREFS"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Person">
		<xsd:sequence>
			<xsd:element name="ContactInformation" type="ContactInformation" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="DateOfBirth" type="xsd:date" minOccurs="0"/>
			<xsd:element name="FirstName" type="xsd:string" minOccurs="0"/>
			<xsd:element name="FullName" type="InternationalizedText" minOccurs="0"/>
			<xsd:element name="Gender" type="xsd:string" minOccurs="0"/>
			<xsd:element name="LastName" type="xsd:string" minOccurs="0"/>
			<xsd:element name="MiddleName" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="Nickname" type="xsd:string" minOccurs="0"/>
			<xsd:element name="PartyId" type="xsd:IDREF" minOccurs="0"/>
			<xsd:element name="Prefix" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Profession" type="InternationalizedText" minOccurs="0"/>
			<xsd:element name="Suffix" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Title" type="InternationalizedText" minOccurs="0"/>
		</xsd:sequence>
		<xsd:attribute name="objectId" type="xsd:ID" use="required"/>
	</xsd:complexType>
	<xsd:complexType name="ReportingDevice">
		<xsd:complexContent>
			<xsd:extension base="GpUnit">
				<xsd:sequence>
					<xsd:element name="Device" type="Device" minOccurs="0"/>
					<xsd:element name="SerialNumber" type="xsd:string" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="ReportingUnit">
		<xsd:complexContent>
			<xsd:extension base="GpUnit">
				<xsd:sequence>
					<xsd:element name="AuthorityIds" type="xsd:IDREFS" minOccurs="0"/>
					<xsd:element name="ContactInformation" type="ContactInformation" minOccurs="0"/>
					<xsd:element name="CountStatus" type="CountStatus" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element name="ElectionAdministration" type="ElectionAdministration" minOccurs="0"/>
					<xsd:element name="IsDistricted" type="xsd:boolean" minOccurs="0"/>
					<xsd:element name="IsMailOnly" type="xsd:boolean" minOccurs="0"/>
					<xsd:element name="Number" type="xsd:string" minOccurs="0"/>
					<xsd:element name="PartyRegistration" type="PartyRegistration" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element name="SpatialDimension" type="SpatialDimension" minOccurs="0"/>
					<xsd:element name="SubUnitsReported" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="TotalSubUnits" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="Type" type="ReportingUnitType"/>
					<xsd:element name="OtherType" type="xsd:string" minOccurs="0"/>
					<xsd:element name="VotersParticipated" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="VotersRegistered" type="xsd:integer" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="RetentionContest">
		<xsd:complexContent>
			<xsd:extension base="BallotMeasureContest">
				<xsd:sequence>
					<xsd:element name="CandidateId" type="xsd:IDREF"/>
					<xsd:element name="OfficeId" type="xsd:IDREF" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Schedule">
		<xsd:sequence>
			<xsd:element name="Hours" type="Hours" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element name="IsOnlyByAppointment" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="IsOrByAppointment" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="IsSubjectToChange" type="xsd:boolean" minOccurs="0"/>
			<xsd:element name="StartDate" type="xsd:date" minOccurs="0"/>
			<xsd:element name="EndDate" type="xsd:date" minOccurs="0"/>
		</xsd:sequence>
		<xsd:attribute name="label" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="SpatialDimension">
		<xsd:sequence>
			<xsd:element name="MapUri" type="xsd:anyURI" minOccurs="0"/>
			<xsd:element name="SpatialExtent" type="SpatialExtent" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SpatialExtent">
		<xsd:sequence>
			<xsd:element name="Coordinates" type="xsd:string"/>
			<xsd:element name="Format" type="GeoSpatialFormat"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SummaryCounts">
		<xsd:complexContent>
			<xsd:extension base="Counts">
				<xsd:sequence>
					<xsd:element name="BallotsCast" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="BallotsOutstanding" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="BallotsRejected" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="Overvotes" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="Undervotes" type="xsd:integer" minOccurs="0"/>
					<xsd:element name="WriteIns" type="xsd:integer" minOccurs="0"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="VoteCounts">
		<xsd:complexContent>
			<xsd:extension base="Counts">
				<xsd:sequence>
					<xsd:element name="Count" type="xsd:float"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
</xsd:schema>
