Используйте ElectionReport в качестве корневой сущности. Она определяет элементы, относящиеся к статусу и формату отчета, а также к дате его создания.
ElectionReport включает следующие основные элементы:
Как и в случае с Election , ElectionReport «оборачивает» экземпляры элементов, за исключением Election , в элементы-контейнеры. Это упрощает работу с файлами экземпляров в XML-просмотрщиках и редакторах.
Иногда важно сохранить определенную схему упорядочивания элементов, например, офисов или политических партий. В таких случаях мы ожидаем, что генерирующее приложение определит эти элементы в соответствии с уже существующей схемой упорядочивания.
Элементы
В следующей таблице перечислены элементы для ElectionReport :
| Элемент | Множественность | Тип | Описание |
|---|---|---|---|
CommitteeCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений Committee . Для получения более подробной информации см. раздел «Сущности коллекций» . |
Election | 0 или более | Election | Связывает выборы с данным отчетом. |
ElectoralCommissionCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений ElectoralCommission . Для получения более подробной информации см. раздел «Сущности коллекций» . |
ExternalIdentifiers | 0 или 1 | ExternalIdentifiers | Привязывает идентификатор к отчету. |
Format | 1 | ReportDetailLevel | Указывает уровень детализации отчета, например, является ли он сводкой результатов выборов или результатами на уровне избирательных участков. |
GeneratedDate | 1 | dateTime | Указывает дату и время составления отчета о выборах. |
GpUnitCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений GpUnit . Для получения более подробной информации см. раздел «Сущности коллекций» . |
Issuer | 1 | string | Идентификация лица, выпустившего отчет. |
IssuerAbbreviation | 0 или 1 | string | Сокращение названия организации, выпустившей отчет, например, сокращение названия штата или избирательного округа, по которому представляются результаты. |
IsTest | 0 или 1 | boolean | Указывает, является ли отчет тестовым. Если этот элемент отсутствует, значение по умолчанию — false . |
Notes | 0 или 1 | string | Используется для добавления произвольного сообщения к отчету. |
OfficeCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений Office . Для получения более подробной информации см. раздел «Сущности коллекций» . |
GovernmentBodyCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений GovernmentBody . Для получения более подробной информации см. раздел «Сущности коллекций» . |
PartyCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений Party . Для получения более подробной информации см. раздел «Сущности коллекций» . |
PersonCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений объектов Person . Для получения более подробной информации см. раздел «Сущности-коллекции» . |
SequenceStart | 1 | integer | Номер отчета как часть последовательности отчетов. Этот элемент используется с SequenceEnd , чтобы читаться, например, как «1 из 1», «1 из 2» или «2 из 2». Начинается с 1 . |
SequenceEnd | 1 | integer | Верхняя граница последовательности отчетов. Например, это 1 , если есть только один отчет, или 2 если в последовательности два отчета. |
Status | 1 | ResultsStatus | Статус отчета о выборах, например, предвыборный или неофициальный. |
TestType | 0 или 1 | string | Описание типа теста, например, предвыборного или теста на логику и точность. |
VendorApplicationID | 1 | string | Идентификатор приложения поставщика, генерирующего отчет о выборах. Например, X-EMS version 3.1.a |
VoterInformationCollection | 0 или 1 | Н/Д | Элемент-оболочка для определений VoterInformation . Для получения более подробной информации см. раздел «Сущности коллекций» . |
Примеры
XML
<ElectionReport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Election>…</Election> <GpUnitCollection> <GpUnit objectId="ru-gpu0">…</GpUnit> <GpUnit objectId="ru-gpu1">…</GpUnit> </GpUnitCollection> <OfficeCollection> <Office objectId="off0001a">…</Office> </OfficeCollection> <GovernmentBodyCollection> <GovernmentBody objectId="gov0001a">…</GovernmentBody> </GovernmentBodyCollection> <PartyCollection> <Party objectId="par001">…</Party> <Party objectId="par002">…</Party> </PartyCollection> <PersonCollection> <Person objectId="per001">…</Person> <Person objectId="per002">…</Person> </PersonCollection> <Issuer>Example Data Provider</Issuer> <IssuerAbbreviation>EDP</IssuerAbbreviation> <Format>summary-contest</Format> <GeneratedDate>2013-11-05T14:25:28</GeneratedDate> <Status>unofficial-partial</Status> <VendorApplicationId>Hand-Generated v0.1</VendorApplicationId> <SequenceStart>1</SequenceStart> <SequenceEnd>1</SequenceEnd> </ElectionReport>
JSON
{ "@type": "ElectionReport", "Election": [ ... ], "GpUnitCollection": { "GpUnit": [ {...}, {...} ] }, "OfficeCollection": { "Office": [ { "objectId": "off0001a", ... } ] }, "PartyCollection": { "Party": [ { "objectId": "par001", ... }, { "objectId": "par002", ... } ] }, "PersonCollection": { "Person": [ { "objectId": "per001", ... }, { "objectId": "per002", ... } ] }, "Issuer": "Example Data Provider", "IssuerAbbreviation": "EDP", "Format": "summary-contest", 'GeneratedDate": "2013-11-05T14:25:28", "Status": "unofficial-partial", "VendorApplicationId": "Hand-Generated v0.1", "SequenceStart": 1, "SequenceEnd": 1 }