ГолосованиеВыбор

Используйте BallotSelection для идентификации кандидатов, выбранных в ходе голосования, например, когда вы связываете кандидатов и партии с результатами голосования.

В этом документе рассматривается BallotSelection и ее дочерние структуры:

  • BallotSelection
    • CandidateSelection
    • PartySelection
    • BallotMeasureSelection
    • SpecialBallotSelection

Выберите один из следующих типов ленты новостей, чтобы узнать больше о том, как использовать BallotSelection и его встроенные элементы с этим типом ленты.


Выбор бюллетеня

BallotSelection — это абстрактный элемент с тремя типами, которые используются в зависимости от типа конкурса:

  • CandidateSelection : Используйте этот type BallotSelection , когда в выборах участвует один или несколько кандидатов. Он связывает выбор кандидата с элементами Candidate .
  • PartySelection : Используйте этот type BallotSelection , когда тип выборов относится к Party , например, для пропорционального распределения мест в партии.
  • BallotMeasureSelection : Используйте этот тип BallotSelection для представления возможных вариантов выбора в конкурсе BallotMeasureContest .
  • SpecialBallotSelection : Этот тип BallotSelection используется для агрегирования результатов подсчета голосов (например, для объединения нескольких кандидатов в категорию «Другие») и для различных видов недействительных бюллетеней (например, пустые бюллетени, недействительные или испорченные бюллетени, а также голоса «ни один из вышеперечисленных»).

Атрибуты

В следующей таблице описаны атрибуты для BallotSelection :

Атрибут Необходимый? Тип Описание
objectId Необходимый ID Уникальный внутренний идентификатор, используемый другими элементами для ссылки на этот элемент.

Элементы

В следующей таблице описаны элементы для BallotSelection :

Элемент Множественность Тип Описание
SequenceOrder 0 или 1 integer

Задает порядок выбора вариантов в бюллетене по умолчанию для целей отображения.

Если SequenceOrder отсутствует в фиде, порядок не предполагается.

Отбор кандидатов

Используйте CandidateSelection для определения кандидатов, чьи имена будут выбраны для голосования в рамках избирательной кампании, включая кандидатов, чьи имена будут вписаны в бюллетень.

CandidateSelection наследует атрибуты и элементы класса BallotSelection . При необходимости можно включать ссылки на несколько элементов Candidate , например, когда выбор в бюллетене осуществляется для списка из нескольких кандидатов.

Когда для заявки указано несколько кандидатов, иногда важно сохранить порядок их расположения. В таких случаях мы ожидаем, что генерирующее приложение будет отображать ссылки на элементы Candidate внутри CandidateIds в соответствии с установленной схемой упорядочивания. Например, порядок кандидатов должен соответствовать порядку ссылок на элементы Office внутри OfficeIds в Contest типа CandidateContest .

Если используется более одного объекта Candidate , они отображаются пользователю в следующем порядке:

  • Все кандидаты, у которых IsTopTicket установлен в true располагаются впереди всех кандидатов без значения IsTopTicket . Они, в свою очередь, располагаются впереди всех кандидатов, у которых параметр IsTopTicket установлен в false . В идеале, выбор устанавливается либо с одним кандидатом без значения IsTopTicket , либо с парой кандидатов, у одного из которых параметр IsTopTicket установлен в true . Если эти условия не выполняются, происходит следующее:
    • Все кандидаты, у которых IsTopTicket установлен в true отображаются в неопределенном порядке.
    • Все кандидаты, у которых отсутствует IsTopTicket , представлены в неопределенном порядке.
    • Все кандидаты, у которых параметр IsTopTicket установлен в false отображаются в неопределенном порядке.

XML-синтаксис для CandidateSelection выглядит следующим образом: <BallotSelection xsi:type="CandidateSelection"> .

Элементы

В следующей таблице описаны элементы для CandidateSelection :

Элемент Множественность Тип Описание
CandidateIds 1 IDREFS Уникальные идентификаторы для одного или нескольких элементов Candidate . Используются для сопоставления кандидата с выбранным кандидатом в избирательном бюллетене. Также полезны, когда в избирательном бюллетене выбраны несколько кандидатов, например, избирательный список, в котором одновременно выбраны президент и вице-президент.
EndorsementPartyIds 0 или более IDREFS Уникальный идентификатор для двух или более Party организаций. Это означает ситуацию, когда политические партии указывают одного и того же кандидата в избирательном бюллетене.
IncludedInAggregation 0 or 1 boolean Указывается, включаются ли голоса, поданные за выбранного кандидата, в совокупный результат голосования AggregateBallotSelection для данного конкурса. Если значение не указано, считается false .
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 наследует атрибуты и элементы класса BallotSelection . XML-синтаксис для PartySelection выглядит следующим образом: <BallotSelection xsi:type="PartySelection" ... /> .

Элементы

В следующей таблице описаны элементы для PartySelection :

Элемент Множественность Тип Описание
IncludedInAggregation 0 или 1 boolean Указывается, включаются ли голоса, поданные за выбранного кандидата, в совокупный результат голосования AggregateBallotSelection для данного конкурса. Если значение не указано, считается false .
PartyIds 1 IDREFS Уникальный идентификатор для одного или нескольких элементов Party . Используется для связывания одной или нескольких сторон с выбранными сторонами.

Примеры

XML

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

JSON

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

Выбор меры, вынесенной на голосование

Используйте BallotMeasureSelection для определения вариантов ответов на вопросы голосования, связанных с инициативами, такими как референдумы.

BallotMeasureSelection наследует атрибуты и элементы BallotSelection . XML-синтаксис для BallotMeasureSelection выглядит следующим образом: <BallotSelection xsi:type="BallotMeasureSelection" ... /> .

Элементы

В следующей таблице описаны элементы для BallotMeasureSelection :

Элемент Множественность Тип Описание
ExternalIdentifiers 0 или 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"
            }
          ]
        }
      }
    ]

Специальный выбор бюллетеня

Этот тип BallotSelection используется для агрегирования результатов подсчета голосов (например, для объединения нескольких кандидатов в категорию «Другие») и для учета различных видов недействительных голосов (например, пустых бюллетеней, недействительных или испорченных бюллетеней, а также голосов «ни один из вышеперечисленных»).

SpecialBallotSelection не следует использовать в общем подэлементе BallotSelection элемента Contest , вместо этого он имеет свои собственные отдельные поля в Contest , а именно AggregateBallotSelection , BlankBallotSelection , NoneOfTheAboveBallotSelection и NullBallotSelection . См. раздел «Элементы Contest для получения более подробной информации.

Элементы

В следующей таблице описаны элементы для SpecialBallotSelection :

Элемент Множественность Тип Описание
CountedInTotal 0 или 1 boolean Учитываются ли голоса, поданные за выбранный объект, в общем количестве голосов, считающихся значимыми. Если не указано иное, считается true .
ExternalIdentifiers 0 или 1 ExternalIdentifiers Привязывает идентификатор к выбранному варианту инициативы на референдуме. Требуется стабильный идентификатор .
Selection 1 InternationalizedText Указывает название для этого варианта ответа в бюллетене, например, «Другие» или «Ни один из вышеперечисленных».

Примеры

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"
        }
      }
    }