Seleksi

Gunakan BallotSelection untuk mengidentifikasi pilihan surat suara dalam suatu pemilihan, seperti saat Anda menautkan kandidat dan partai dengan jumlah suara mereka.

Dokumen ini membahas BallotSelection dan sub-entitasnya:

  • BallotSelection
    • CandidateSelection
    • PartySelection
    • BallotMeasureSelection
    • SpecialBallotSelection

Pilih salah satu jenis feed berikut untuk mempelajari lebih lanjut cara menggunakan BallotSelection dan elemen bawaannya dengan jenis feed tersebut.


BallotSelection

BallotSelection adalah elemen abstrak dengan tiga jenis yang digunakan berdasarkan jenis kontes:

  • CandidateSelection: Gunakan type BallotSelection ini saat kontes ditujukan untuk satu atau beberapa kandidat. Elemen ini menautkan pemilihan surat suara ke elemen Candidate.
  • PartySelection: Gunakan type BallotSelection ini jika jenis kontesnya adalah untuk Party, seperti untuk kontes proporsional partai.
  • BallotMeasureSelection: Gunakan jenis BallotSelection ini untuk merepresentasikan kemungkinan pilihan dalam BallotMeasureContest.
  • SpecialBallotSelection: Jenis BallotSelection ini digunakan untuk penggabungan penghitungan suara (misalnya, menggabungkan beberapa kandidat ke dalam "Lainnya") dan berbagai jenis non-suara (yaitu surat suara kosong, surat suara batal atau rusak, dan suara "tidak ada satu pun di atas").

Atribut

Tabel berikut menjelaskan atribut untuk BallotSelection:

Atribut Wajib? Jenis Deskripsi
objectId Wajib ID ID internal unik yang digunakan oleh elemen lain untuk merujuk elemen ini.

Elemen

Tabel berikut menjelaskan elemen untuk BallotSelection:

Elemen Keanekaragaman Jenis Deskripsi
SequenceOrder 0 atau 1 integer

Menentukan urutan default untuk pemilihan surat suara untuk tujuan penayangan.

Jika SequenceOrder tidak ada di feed, tidak ada urutan yang diasumsikan.

CandidateSelection

Gunakan CandidateSelection untuk mengidentifikasi pilihan surat suara dalam kontes kandidat, termasuk surat suara yang ditulis sendiri.

CandidateSelection mewarisi atribut dan elemen BallotSelection. Referensi ke beberapa elemen Candidate dapat disertakan jika diperlukan, misalnya, saat pemilihan surat suara adalah untuk tiket beberapa kandidat.

Jika beberapa kandidat dirujuk untuk tiket, terkadang penting untuk mempertahankan urutan kandidat. Dalam kasus ini, kami mengharapkan aplikasi yang membuat daftar referensi ke elemen Candidate dalam CandidateIds sesuai dengan skema pengurutan yang ada. Misalnya, urutan kandidat harus cocok dengan urutan yang sama dari referensi elemen Office dalam OfficeIds di Contest berjenis CandidateContest.

Jika lebih dari satu objek Candidate dirujuk, objek tersebut akan ditampilkan kepada pengguna dalam urutan berikut:

  • Semua kandidat dengan IsTopTicket yang ditetapkan ke true diurutkan sebelum semua kandidat tanpa nilai IsTopTicket. Model ini, pada gilirannya, diurutkan di depan semua kandidat dengan IsTopTicket yang ditetapkan ke false. Idealnya, pilihan ditetapkan dengan satu kandidat tanpa nilai IsTopTicket, atau ada sepasang kandidat, dan salah satunya memiliki IsTopTicket yang ditetapkan ke true. Jika kondisi ini tidak terpenuhi, hal berikut akan terjadi:
    • Semua kandidat dengan IsTopTicket yang ditetapkan ke true ditampilkan dalam urutan yang tidak ditentukan.
    • Semua kandidat yang tidak memiliki IsTopTicket ditampilkan dalam urutan yang tidak ditentukan.
    • Semua kandidat dengan IsTopTicket yang ditetapkan ke false ditampilkan dalam urutan yang tidak ditentukan.

Sintaksis XML untuk CandidateSelection adalah sebagai berikut: <BallotSelection xsi:type="CandidateSelection">.

Elemen

Tabel berikut menjelaskan elemen untuk CandidateSelection:

Elemen Keanekaragaman Jenis Deskripsi
CandidateIds 1 IDREFS ID unik untuk satu atau beberapa elemen Candidate. Digunakan untuk mengaitkan kandidat dengan pilihan kandidat pada surat suara. Juga berguna saat pemilihan surat suara ditujukan untuk beberapa kandidat, seperti tiket dengan Presiden dan Wakil Presiden yang dipilih bersama.
EndorsementPartyIds 0 atau lebih IDREFS ID unik untuk dua atau lebih entitas Party. Hal ini menunjukkan pengaturan di mana partai politik mencantumkan kandidat yang sama dalam surat suara.
IncludedInAggregation 0 atau 1 boolean Apakah jumlah suara pilihan disertakan dalam AggregateBallotSelection untuk kontes. Diasumsikan false jika tidak ditentukan.
IsWriteIn 0 atau 1 boolean Menunjukkan apakah kandidat adalah kandidat dengan surat suara tertulis. Nilai defaultnya adalah false.

Contoh

XML

    <BallotSelection objectId="cs10861" xsi:type="CandidateSelection">
      <CandidateIds>can10861a can10861b</CandidateIds>
    </BallotSelection>

JSON

    "BallotSelection": [
      {
        "@type": "CandidateSelection",
        "objectId": "cs10861",
        "CandidateIds": [
          "can10861a",
          "can10861b"
        ]
      }
    ]

PartySelection

Gunakan PartySelection untuk mengidentifikasi pilihan surat suara yang melibatkan partai, seperti pilihan daftar partai pada surat suara.

PartySelection mewarisi atribut dan elemen BallotSelection. Sintaksis XML untuk PartySelection adalah sebagai berikut: <BallotSelection xsi:type="PartySelection" ... />.

Elemen

Tabel berikut menjelaskan elemen untuk PartySelection:

Elemen Keanekaragaman Jenis Deskripsi
IncludedInAggregation 0 atau 1 boolean Apakah jumlah suara pilihan disertakan dalam AggregateBallotSelection untuk kontes. Diasumsikan false jika tidak ditentukan.
PartyIds 1 IDREFS ID unik untuk satu atau beberapa elemen Party. Gunakan untuk mengaitkan satu atau beberapa pihak dengan pilihan pihak.

Contoh

XML

    <BallotSelection objectId="ps150" xsi:type="PartySelection">
      <PartyIds>par100</PartyIds>
    </BallotSelection>

JSON

    "BallotSelection": [
      {
        "@type": "PartySelection",
        "objectId": "ps150",
        "PartyIds": [
          "par100"
        ]
      }
    ]

BallotMeasureSelection

Gunakan BallotMeasureSelection untuk mengidentifikasi pilihan surat suara yang melibatkan ukuran surat suara, seperti referendum.

BallotMeasureSelection mewarisi atribut dan elemen BallotSelection. Sintaksis XML untuk BallotMeasureSelection adalah sebagai berikut: <BallotSelection xsi:type="BallotMeasureSelection" ... />.

Elemen

Tabel berikut menjelaskan elemen untuk BallotMeasureSelection:

Elemen Keanekaragaman Jenis Deskripsi
ExternalIdentifiers 0 atau 1 ExternalIdentifiers Mengaitkan ID dengan pilihan inisiatif dan referendum. A ID stabil wajib diisi.
Selection 1 InternationalizedText Menyediakan pilihan yang tersedia untuk surat suara, seperti Yes atau No.

Contoh

XML

    <BallotSelection objectId="bms00" xsi:type="BallotMeasureSelection">
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>bmc0_yes</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
      <Selection>
        <Text language="en">Yes</Text>
      </Selection>
    </BallotSelection>

JSON

    "BallotSelection": [
      {
        "@type": "BallotMeasureSelection",
        "objectId": "bms00",
        "ExternalIdentifiers": {
          "ExternalIdentifier" : [
            {
              "Type": "other",
              "OtherType": "stable",
              "Value": "bmc0_yes"
            }
          ]
        },
        "Selection": {
          "Text": [
            {
              "value": "Yes",
              "language": "en"
            }
          ]
        }
      }
    ]

XML

    <BallotSelection objectId="bms00" xsi:type="BallotMeasureSelection">
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>bmc0_yes</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
      <Selection>
        <Text language="en">Yes</Text>
      </Selection>
    </BallotSelection>

JSON

    "BallotSelection": [
      {
        "@type": "BallotMeasureSelection",
        "objectId": "bms00",
        "ExternalIdentifiers": {
          "ExternalIdentifier" : [
            {
              "Type": "other",
              "OtherType": "stable",
              "Value": "bmc0_yes"
            }
          ]
        },
        "Selection": {
          "Text": [
            {
              "value": "Yes",
              "language": "en"
            }
          ]
        }
      }
    ]

SpecialBallotSelection

Jenis BallotSelection ini digunakan untuk penggabungan jumlah suara (misalnya, menggabungkan beberapa kandidat ke dalam "Lainnya") dan berbagai jenis non-suara (yaitu surat suara kosong, surat suara batal atau rusak, dan suara "tidak ada satu pun di atas").

SpecialBallotSelection tidak boleh digunakan di subelemen BallotSelection umum dari Contest dan memiliki kolomnya sendiri yang berbeda di Contest, yaitu AggregateBallotSelection, BlankBallotSelection, NoneOfTheAboveBallotSelection, dan NullBallotSelection. Lihat elemen Contest untuk mengetahui detail selengkapnya.

Elemen

Tabel berikut menjelaskan elemen untuk SpecialBallotSelection:

Elemen Keanekaragaman Jenis Deskripsi
CountedInTotal 0 atau 1 boolean Apakah jumlah suara pilihan entitas dihitung dalam total suara yang dianggap penting. Diasumsikan true jika tidak ditentukan.
ExternalIdentifiers 0 atau 1 ExternalIdentifiers Mengaitkan ID dengan pilihan inisiatif dan referendum. A ID stabil wajib diisi.
Selection 1 InternationalizedText Memberikan nama untuk pilihan surat suara ini, seperti "Lainnya" atau "Tidak satu pun di atas".

Contoh

XML

    <AggregateBallotSelection objectId="selection3">
      <Selection>
        <Text language="en">Other Candidates</Text>
      </Selection>
      <ExternalIdentifiers>
        <ExternalIdentifier>
          <Type>other</Type>
          <OtherType>stable</OtherType>
          <Value>selection3</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </AggregateBallotSelection>
    <!-- Counts of ballots left blank -->
    <BlankBallotSelection objectId="selection4">
      <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>selection4</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </BlankBallotSelection>
    <!-- Votes for "None of the above" option on the ballot -->
    <NoneOfTheAboveBallotSelection objectId="selection5">
      <!--
        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>selection5</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="selection5">
      <!--
        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>selection5</Value>
        </ExternalIdentifier>
      </ExternalIdentifiers>
    </NullBallotSelection>
      

JSON

    "AggregateBallotSelection": {
      "objectId": "selection3",
      "Selection": {
        "Text": {
          "@language": "en",
          "#text": "Other Candidates"
        }
      },
      "ExternalIdentifiers": {
        "ExternalIdentifier": {
          "Type": "other",
          "OtherType": "stable",
          "Value": "selection3"
        }
      },
    },
    "BlankBallotSelection": {
      "objectId": "selection4",
      "Selection": {
        "Text": {
          "@language": "en",
          "#text": "Blank Ballots"
        }
      },
      "CountedInTotal": true,
      "ExternalIdentifiers": {
        "ExternalIdentifier": {
          "Type": "other",
          "OtherType": "stable",
          "Value": "selection4"
        }
      }
    },
    "NoneOfTheAboveBallotSelection": {
      "objectId": "selection5",
      "Selection": {
        "Text": {
          "@language": "en",
          "#text": "None"
        }
      },
      "CountedInTotal": true,
      "ExternalIdentifiers": {
        "ExternalIdentifier": {
          "Type": "other",
          "OtherType": "stable",
          "Value": "selection5"
        }
      }
    },
    "NullBallotSelection": {
      "objectId": "selection5",
      "Selection": {
        "Text": {
          "@language": "en",
          "#text": "Spoiled ballots"
        }
      },
      "CountedInTotal": false,
      "ExternalIdentifiers": {
        "ExternalIdentifier": {
          "Type": "other",
          "OtherType": "stable",
          "Value": "selection5"
        }
      }
    }