Biểu ngữ

Sử dụng BallotSelection để xác định các lựa chọn trong phiếu bầu trong một cuộc tranh cử, chẳng hạn như khi bạn liên kết các ứng cử viên và đảng với số phiếu bầu của họ.

Tài liệu này thảo luận về BallotSelection và các thực thể phụ của nó:

  • BallotSelection
    • CandidateSelection
    • PartySelection
    • BallotMeasureSelection
    • SpecialBallotSelection

Chọn một trong các loại nguồn cấp dữ liệu sau để tìm hiểu thêm về cách sử dụng BallotSelection và các phần tử vốn có của nó với loại nguồn cấp dữ liệu đó.


BallotSelection

BallotSelection là một phần tử trừu tượng có 3 loại được sử dụng dựa trên loại cuộc tranh cử:

  • CandidateSelection: Sử dụng type này của BallotSelection khi cuộc tranh cử dành cho một hoặc nhiều ứng cử viên. Loại này liên kết lựa chọn trong phiếu bầu với các Candidate phần tử.
  • PartySelection: Sử dụng type này của BallotSelection khi loại cuộc tranh cử dành cho một Party, chẳng hạn như cuộc tranh cử theo tỷ lệ của một đảng.
  • BallotMeasureSelection: Sử dụng loại BallotSelection này để biểu thị các lựa chọn có thể có trong BallotMeasureContest.
  • SpecialBallotSelection: Loại BallotSelection này được dùng để tổng hợp số phiếu bầu (ví dụ: tổng hợp nhiều ứng cử viên thành "Khác") và các loại phiếu không hợp lệ (tức là phiếu bầu trống, phiếu bầu vô hiệu hoặc bị hỏng và phiếu bầu "không có lựa chọn nào ở trên").

Thuộc tính

Bảng sau đây mô tả các thuộc tính của BallotSelection:

Thuộc tính Bắt buộc? Loại Mô tả
objectId Bắt buộc ID Giá trị nhận dạng nội bộ riêng biệt mà các phần tử khác dùng để tham chiếu đến phần tử này.

Phần tử

Bảng sau đây mô tả các phần tử của BallotSelection:

Phần tử Số bội Loại Mô tả
SequenceOrder 0 hoặc 1 integer

Chỉ định thứ tự mặc định cho lựa chọn trong phiếu bầu nhằm mục đích hiển thị.

Nếu SequenceOrder không có trong nguồn cấp dữ liệu, thì hệ thống sẽ không giả định thứ tự nào.

CandidateSelection

Sử dụng CandidateSelection để xác định các lựa chọn trong phiếu bầu trong một cuộc tranh cử ứng cử viên, bao gồm cả các ứng cử viên được viết tên.

CandidateSelection kế thừa các thuộc tính và phần tử của BallotSelection. Bạn có thể đưa vào các tham chiếu đến nhiều Candidate phần tử nếu cần, chẳng hạn như khi lựa chọn trong phiếu bầu là cho một liên danh gồm nhiều ứng cử viên.

Khi nhiều ứng cử viên được tham chiếu cho một liên danh, đôi khi bạn cần giữ nguyên thứ tự của các ứng cử viên. Trong những trường hợp này, chúng tôi mong ứng dụng tạo sẽ liệt kê các tham chiếu đến các phần tử Candidate trong CandidateIds theo sơ đồ thứ tự hiện có. Ví dụ: thứ tự của các ứng cử viên cần khớp với thứ tự tham chiếu của phần tử Office trong OfficeIds trong Contest thuộc loại CandidateContest.

Nếu nhiều đối tượng Candidate được tham chiếu, thì các đối tượng này sẽ được trình bày cho người dùng theo thứ tự sau:

  • Tất cả các ứng cử viên có IsTopTicket được đặt thành true đều được sắp xếp trước tất cả các ứng cử viên không có giá trị IsTopTicket. Đến lượt họ, họ được sắp xếp trước tất cả các ứng cử viên có IsTopTicket được đặt thành false. Tốt nhất là bạn nên đặt lựa chọn cho một ứng cử viên không có giá trị IsTopTicket, hoặc có một cặp ứng cử viên và một trong số họ có IsTopTicket được đặt thành true. Nếu các điều kiện này không được đáp ứng, thì điều sau sẽ xảy ra:
    • Tất cả các ứng cử viên có IsTopTicket được đặt thành true đều được trình bày theo thứ tự không xác định.
    • Tất cả các ứng cử viên không có IsTopTicket đều được trình bày theo thứ tự không xác định.
    • Tất cả các ứng cử viên có IsTopTicket được đặt thành false đều được trình bày theo thứ tự không xác định.

Cú pháp XML cho CandidateSelection như sau: <BallotSelection xsi:type="CandidateSelection">.

Phần tử

Bảng sau đây mô tả các phần tử của CandidateSelection:

Phần tử Số bội Loại Mô tả
CandidateIds 1 IDREFS Giá trị nhận dạng riêng biệt của một hoặc nhiều Candidate phần tử. Sử dụng để liên kết một ứng cử viên với lựa chọn trong phiếu bầu trên phiếu bầu. Cũng hữu ích khi lựa chọn trong phiếu bầu là cho nhiều ứng cử viên, chẳng hạn như một liên danh có Tổng thống và Phó Tổng thống được chọn cùng nhau.
EndorsementPartyIds 0 hoặc nhiều IDREFS Giá trị nhận dạng riêng biệt của 2 hoặc nhiều Party thực thể. Đây là một thoả thuận trong đó các chính đảng liệt kê cùng một ứng cử viên trong một phiếu bầu.
IncludedInAggregation 0 hoặc 1 boolean Liệu số phiếu bầu của lựa chọn có được đưa vào AggregateBallotSelection cho cuộc tranh cử hay không. Hệ thống sẽ giả định là false nếu bạn không chỉ định.
IsWriteIn 0 hoặc 1 boolean Cho biết liệu ứng cử viên có phải là ứng cử viên được viết tên hay không. Giá trị mặc định là false.
PostElectionStatus 0 hoặc 1 CandidatePostElectionStatus Trạng thái cuối cùng của ứng cử viên, chẳng hạn như winner hoặc advanced-to-runoff.
PreElectionStatus 0 hoặc 1 CandidatePreElectionStatus Trạng thái đăng ký của ứng cử viên, chẳng hạn như filed hoặc qualified.

Ví dụ

XML

    <BallotSelection objectId="cs-10861" xsi:type="CandidateSelection">
      <CandidateIds>can-10861a can-10861b</CandidateIds>
    </BallotSelection>

PartySelection

Sử dụng PartySelection để xác định các lựa chọn trong phiếu bầu liên quan đến một đảng, chẳng hạn như lựa chọn danh sách đảng trong phiếu bầu.

PartySelection kế thừa các thuộc tính và phần tử của BallotSelection. Cú pháp XML cho PartySelection như sau: <BallotSelection xsi:type="PartySelection" ... />.

Phần tử

Bảng sau đây mô tả các phần tử của PartySelection:

Phần tử Số bội Loại Mô tả
IncludedInAggregation 0 hoặc 1 boolean Liệu số phiếu bầu của lựa chọn có được đưa vào AggregateBallotSelection cho cuộc tranh cử hay không. Hệ thống sẽ giả định là false nếu bạn không chỉ định.
PartyIds 1 IDREFS Giá trị nhận dạng riêng biệt của một hoặc nhiều Party phần tử. Sử dụng để liên kết một hoặc nhiều đảng với lựa chọn đảng.

Ví dụ

XML

    <BallotSelection objectId="ps-150" xsi:type="PartySelection">
      <PartyIds>par-100</PartyIds>
    </BallotSelection>

BallotMeasureSelection

Sử dụng BallotMeasureSelection để xác định các lựa chọn trong phiếu bầu liên quan đến một biện pháp trong phiếu bầu, chẳng hạn như trưng cầu dân ý.

BallotMeasureSelection kế thừa các thuộc tính và phần tử của BallotSelection. Cú pháp XML cho BallotMeasureSelection như sau: <BallotSelection xsi:type="BallotMeasureSelection" ... />.

Phần tử

Bảng sau đây mô tả các phần tử của BallotMeasureSelection:

Phần tử Số bội Loại Mô tả
ExternalIdentifiers 0 hoặc 1 ExternalIdentifiers Liên kết một mã nhận dạng với lựa chọn biện pháp trong phiếu bầu. Bạn phải có một giá trị nhận dạng ổn định ổn định.
Selection 1 InternationalizedText Cung cấp một lựa chọn có sẵn cho phiếu bầu, chẳng hạn như Yes hoặc No.

Ví dụ

XML

    <BallotSelection objectId="bms-00" xsi:type="BallotMeasureSelection">
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>bms-00-yes</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
      <Selection>
        <Text language="en">Yes</Text>
      </Selection>
    </BallotSelection>

XML

    <BallotSelection objectId="bms-00" xsi:type="BallotMeasureSelection">
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>bms-00-yes</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
      <Selection>
        <Text language="en">Yes</Text>
      </Selection>
    </BallotSelection>

SpecialBallotSelection

Loại BallotSelection này được dùng để tổng hợp số phiếu bầu (ví dụ: tổng hợp nhiều ứng cử viên thành "Khác") và các loại phiếu không hợp lệ (tức là phiếu bầu trống, phiếu bầu vô hiệu hoặc bị hỏng và phiếu bầu "không có lựa chọn nào ở trên").

SpecialBallotSelection không nên được sử dụng trong BallotSelection phần tử con chung của Contest. Thay vào đó, phần tử này có các trường riêng biệt trên Contest, cụ thể là AggregateBallotSelection, BlankBallotSelection, NoneOfTheAboveBallotSelection và NullBallotSelection. Hãy xem các phần tử Contest để biết thêm chi tiết.

Phần tử

Bảng sau đây mô tả các phần tử của SpecialBallotSelection:

Phần tử Số bội Loại Mô tả
CountedInTotal 0 hoặc 1 boolean Liệu số phiếu bầu của lựa chọn thực thể có được tính vào tổng số phiếu bầu đáng chú ý hay không. Hệ thống sẽ giả định là true nếu bạn không chỉ định.
ExternalIdentifiers 0 hoặc 1 ExternalIdentifiers Liên kết một mã nhận dạng với lựa chọn biện pháp trong phiếu bầu. Bạn phải có một giá trị nhận dạng ổn định ổn định.
Selection 1 InternationalizedText Cung cấp tên cho lựa chọn trong phiếu bầu này, chẳng hạn như "Khác" hoặc "Không có lựa chọn nào ở trên".

Ví dụ

XML

    <AggregateBallotSelection objectId="sbs-3">
      <Selection>
        <Text language="en">Other Candidates</Text>
      </Selection>
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>sbs-3</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </AggregateBallotSelection>
    <!-- Counts of ballots left blank -->
    <BlankBallotSelection objectId="sbs-4">
      <Selection>
        <Text language="en">Blank ballots</Text>
      </Selection>
      <!-- These ballots count in the total and can affect majorities -->
      <CountedInTotal>true</CountedInTotal>
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>sbs-4</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </BlankBallotSelection>
    <!-- Votes for "None of the above" option on the ballot -->
    <NoneOfTheAboveBallotSelection objectId="sbs-5">
      <!--
        The NOTA selection optiona as it appears on the ballot, often
        "None of the above", "None", or "Uncommitted"
      -->
      <Selection>
        <Text language="en">None</Text>
      </Selection>
      <!-- These ballots count in the total and can affect majorities -->
      <CountedInTotal>true</CountedInTotal>
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>sbs-5</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </NoneOfTheAboveBallotSelection>
    <!--
      Counts of null or spoiled ballots, i.e. ballots that have been marked in
      a way that the vote cannot be counted
    -->
    <NullBallotSelection objectId="sbs-6">
      <!--
        How these ballots are often called in a given country, often
        "null" or "spoiled"
      -->
      <Selection>
        <Text language="en">Spoiled ballots</Text>
      </Selection>
      <!--
        These ballots do count in the total and are treated as the same as
        if this vote did not happen at all
      -->
      <CountedInTotal>false</CountedInTotal>
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>sbs-6</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </NullBallotSelection>