TrustTheVote-Project / NIST-1500-100-103-examples

Other
3 stars 5 forks source link

Will there ever be a case where there are multiple candidateIds for a single candidate contest? #24

Closed mattbeattie closed 2 years ago

mattbeattie commented 2 years ago

For example: https://github.com/TrustTheVote-Project/NIST-1500-100-103-examples/blob/main/NIST_1500-100/version_2/single_candidate_contest.xml

In the contest_princeton_mayor Contest, there are three ContestSelections. The third is a write-in. The first two have a CandidateIds element, with a single candidate ID listed.

Will there ever be a case where this element will have multiple candidate IDs? Or can we safely assume "one candidate ID per ballot selection" for candidate contests of vote variation majority?

cwulfman commented 2 years ago

From the spec (p. 34):

For the contest selections in a candidate contest, including for
write-ins. It inherits the attributes of ContestSelection. References
to multiple Candidate instances can be included if necessary, e.g.,
when the contest selection would be for a ticket of candidates (unless
the ticket itself is defined as a candidate).
mattbeattie commented 2 years ago

Thanks for looking that up! So I suppose the spec allows for multiple candidate IDs anytime there's a candidate contest - majority, n-of-m, or presidential.

Would it be correct to display this on the ballot selection line as follows?

${candidateOneName} and ${candidateTwoName} ${partyAbbreviation}

I'm also assuming that the party would be the same for all candidates on the same ballot (i.e., ContestSelections) - can you confirm if this is correct? If so, I can add some logic to ensure that's the case. If not, how should that be displayed?

mattbeattie commented 2 years ago

A separate question based on some info in the spec:

ContestSelection is an abstract class with three subclasses that get used according to the type of contest:

BallotMeasureSelection, used if the contest type is for a ballot measure, including for retentions CandidateSelection, used if the contest type is for one or more candidates, to link the contest selection to the candidate instances and endorsement parties; and PartySelection, used if the contest type is for a party, e.g., for a straight party contest. ContestSelection includes VoteCounts for associating vote counts with the contest selection. SequenceOrder is included to specify an ordering for the contest selections for purposes of display only. The original ballot ordering can be preserved, however, by using the BallotStyle class.

We've talked about ballot measures, but (unless I'm missing something) we haven't really talked about "straight party contests or" "vote counts" before. Do these map to the majority / n-of-m / presidential type contests, or are they something different?