ใช้ BallotSelection เพื่อระบุตัวเลือกในบัตรลงคะแนนในการแข่งขัน เช่น
เมื่อลิงก์ผู้สมัครรับเลือกตั้งและพรรคการเมืองกับจำนวนคะแนนเสียง
เอกสารนี้จะกล่าวถึง BallotSelection และเอนทิตีย่อยของ BallotSelection ดังนี้
BallotSelectionCandidateSelectionPartySelectionBallotMeasureSelection
เลือกประเภทฟีดต่อไปนี้เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้
BallotSelection และองค์ประกอบที่มีอยู่ในฟีดประเภทนั้น
BallotSelection
BallotSelection เป็นองค์ประกอบนามธรรมที่มี 3 ประเภทซึ่งใช้ตาม
ประเภทการแข่งขัน
CandidateSelection: ใช้typeนี้BallotSelectionเมื่อการแข่งขันมีผู้สมัครรับเลือกตั้งตั้งแต่ 1 คนขึ้นไป โดยจะลิงก์ การเลือกบัตรลงคะแนนกับองค์ประกอบCandidatePartySelection: ใช้typeนี้จากBallotSelectionเมื่อประเภทการแข่งขันเป็นPartyเช่น การแข่งขันแบบสัดส่วนของพรรคBallotMeasureSelection: ใช้BallotSelectionประเภทนี้เพื่อแสดงตัวเลือกที่เป็นไปได้ในBallotMeasureContest
Attributes
ตารางต่อไปนี้อธิบายแอตทริบิวต์สำหรับ BallotSelection
| แอตทริบิวต์ | จำเป็นหรือไม่ | ประเภท | คำอธิบาย |
|---|---|---|---|
objectId
|
ต้องระบุ | ID |
ตัวระบุภายในที่ไม่ซ้ำกันซึ่งองค์ประกอบอื่นๆ ใช้เพื่ออ้างอิงถึง องค์ประกอบนี้ |
องค์ประกอบ
ตารางต่อไปนี้จะอธิบายองค์ประกอบสำหรับ BallotSelection
| องค์ประกอบ | ความหลากหลาย | ประเภท | คำอธิบาย |
|---|---|---|---|
SequenceOrder |
0 หรือ 1 | integer |
ระบุลำดับเริ่มต้นสำหรับการเลือกบัตรลงคะแนนเพื่อวัตถุประสงค์ในการแสดง หากไม่มี |
CandidateSelection
ใช้ CandidateSelection เพื่อระบุตัวเลือกในบัตรเลือกตั้งในการแข่งขันของผู้สมัครรับเลือกตั้ง รวมถึงผู้สมัครรับเลือกตั้งที่เขียนชื่อลงในบัตรเลือกตั้ง
CandidateSelection จะรับค่าแอตทริบิวต์
และองค์ประกอบของ BallotSelection คุณอาจรวมการอ้างอิงถึงองค์ประกอบ Candidate หลายรายการได้หากจำเป็น เช่น เมื่อเลือกบัตรลงคะแนนสำหรับตั๋วที่มีผู้สมัครรับเลือกตั้งหลายคน
ในบางครั้ง การรักษลําดับของผู้สมัครที่อ้างอิงในตั๋วเป็นสิ่งสําคัญ
ในกรณีเหล่านี้ เราคาดหวังให้แอปพลิเคชันที่สร้างระบุการอ้างอิงถึงองค์ประกอบ Candidate ภายใน CandidateIds ตามรูปแบบการจัดลำดับที่มีอยู่ เช่น ลำดับของผู้สมัครจะต้องตรงกับลำดับเดียวกันของการอ้างอิงองค์ประกอบ Office ภายใน OfficeIds ใน Contest ของประเภท CandidateContest
หากมีการอ้างอิงออบเจ็กต์ Candidate มากกว่า 1 รายการ ระบบจะแสดงต่อผู้ใช้ตามลำดับต่อไปนี้
- ผู้สมัครที่มี
IsTopTicketตั้งค่าเป็นtrueจะได้รับการจัดอันดับก่อนผู้สมัครทั้งหมดที่ไม่มีค่าIsTopTicketและจะมีการจัดลำดับก่อนหน้าผู้สมัครรับเลือกตั้งทั้งหมดที่มีIsTopTicketตั้งค่าเป็นfalseในอุดมคติ การเลือก จะตั้งค่าโดยมีผู้สมัครรับเลือก 1 คนที่ไม่มีค่าIsTopTicketหรือมี ผู้สมัครรับเลือก 2 คน และคนใดคนหนึ่งมีค่าIsTopTicketตั้งเป็นtrueหากไม่เป็นไปตามเงื่อนไขต่อไปนี้ จะเกิดสิ่งต่อไปนี้ขึ้น- ตัวเลือกทั้งหมดที่มี
IsTopTicketตั้งค่าเป็นtrueจะแสดงตามลำดับ undefined - ผู้สมัครทั้งหมดที่
IsTopTicketไม่อยู่จะแสดงตามลำดับที่ ไม่ได้กำหนด - ตัวเลือกทั้งหมดที่มี
IsTopTicketตั้งค่าเป็นfalseจะแสดงตามลำดับ undefined
- ตัวเลือกทั้งหมดที่มี
ไวยากรณ์ XML สำหรับ CandidateSelection มีดังนี้
<BallotSelection xsi:type="CandidateSelection">
องค์ประกอบ
ตารางต่อไปนี้จะอธิบายองค์ประกอบสำหรับ CandidateSelection
| องค์ประกอบ | ความหลากหลาย | ประเภท | คำอธิบาย |
|---|---|---|---|
CandidateIds |
1 | IDREFS |
ตัวระบุที่ไม่ซ้ำกันสำหรับองค์ประกอบ
Candidate
อย่างน้อย 1 รายการ ใช้เพื่อเชื่อมโยงผู้สมัครรับเลือกตั้งกับการเลือกผู้สมัครรับเลือกตั้งใน
บัตรลงคะแนน นอกจากนี้ ยังมีประโยชน์เมื่อมีการเลือกผู้สมัครหลายคนในบัตรเลือกตั้ง เช่น บัตรเลือกตั้งที่มีการเลือกประธานาธิบดีและรองประธานาธิบดีพร้อมกัน |
EndorsementPartyIds |
0 ขึ้นไป | IDREFS |
ตัวระบุที่ไม่ซ้ำกันสำหรับเอนทิตี Party ตั้งแต่ 2 รายการขึ้นไป
ซึ่งแสดงถึงข้อตกลงที่พรรคการเมืองระบุชื่อผู้สมัครรับเลือกตั้งคนเดียวกันในบัตรลงคะแนน |
IsWriteIn |
0 หรือ 1 | boolean |
ระบุว่าผู้สมัครเป็นผู้สมัครรับเลือกตั้งที่ได้คะแนนเสียงจากการเขียนชื่อลงในบัตรเลือกตั้งหรือไม่ ค่าเริ่มต้นคือ
false |
ตัวอย่าง
XML
<BallotSelection objectId="cs10861" xsi:type="CandidateSelection"> <CandidateIds>can10861a can10861b</CandidateIds> </BallotSelection>
JSON
"BallotSelection": [ { "@type": "CandidateSelection", "objectId": "cs10861", "CandidateIds": [ "can10861a", "can10861b" ] } ]
PartySelection
ใช้ PartySelection เพื่อระบุตัวเลือกในบัตรลงคะแนนที่เกี่ยวข้องกับพรรคการเมือง เช่น
การเลือกรายชื่อพรรคการเมืองในบัตรลงคะแนน
PartySelection จะรับค่าแอตทริบิวต์และองค์ประกอบของ BallotSelection ไวยากรณ์ XML สำหรับ PartySelection มีดังนี้
<BallotSelection xsi:type="PartySelection" ... />
องค์ประกอบ
ตารางต่อไปนี้จะอธิบายองค์ประกอบสำหรับ PartySelection
| องค์ประกอบ | ความหลากหลาย | ประเภท | คำอธิบาย |
|---|---|---|---|
PartyIds |
1 | IDREFS |
ตัวระบุที่ไม่ซ้ำกันสำหรับองค์ประกอบ
Party
อย่างน้อย 1 รายการ ใช้เพื่อเชื่อมโยงบุคคลอย่างน้อย 1 คนกับตัวเลือกบุคคล
|
ตัวอย่าง
XML
<BallotSelection objectId="ps150" xsi:type="PartySelection"> <PartyIds>par100</PartyIds> </BallotSelection>
JSON
"BallotSelection": [ { "@type": "PartySelection", "objectId": "ps150", "PartyIds": [ "par100" ] } ]
BallotMeasureSelection
ใช้ BallotMeasureSelection เพื่อระบุการเลือกบัตรลงคะแนนที่เกี่ยวข้องกับ
มาตรการลงคะแนน เช่น การลงประชามติ
BallotMeasureSelection จะรับค่าแอตทริบิวต์และองค์ประกอบของ
BallotSelection ไวยากรณ์ XML สำหรับ BallotMeasureSelection มีดังนี้
<BallotSelection xsi:type="BallotMeasureSelection" ... />
องค์ประกอบ
ตารางต่อไปนี้จะอธิบายองค์ประกอบสำหรับ BallotMeasureSelection
| องค์ประกอบ | ความหลากหลาย | ประเภท | คำอธิบาย |
|---|---|---|---|
ExternalIdentifiers |
1 | ExternalIdentifiers |
เชื่อมโยงรหัสกับการเลือกมาตรการลงคะแนน ต้องระบุ ตัวระบุที่เสถียร |
Selection |
1 | InternationalizedText |
ระบุตัวเลือกที่ใช้ได้สำหรับบัตรลงคะแนน เช่น Yes
หรือ No |
ตัวอย่าง
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" } ] } } ]