To make sure you don't miss some validation rules, specify your feed type with
RULE_SET:
Feed type
RULE_SET value
Officeholder
OFFICEHOLDER
Pre-election data / Election results
ELECTION
Levels of validation checks
The feed validation tool runs three classes of checks:
Error: If you see any errors, Google can't parse the file. Eliminate
all error messages from your feeds before you send your data. If you need
assistance to address your error messages, file a bug in your component.
Warning: Warnings flag scenarios that aren't supposed to happen, aren't
great user experiences, or are likely errors that need to be fixed. For
example, a warning is given if you provide candidate names in ALL CAPITAL
LETTERS. Try to fix all of the warnings given, and expect for us to ask
follow-up questions if the validator identifies warnings in a feed.
Info: Info messages indicate scenarios that don't affect the automated
ingestion of a feed or the user experience but that help someone read and
understand the layout of your data. Fixing info messages is optional.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-08-21 UTC."],[[["\u003cp\u003eAn open-source feed validator is available to provide specific, actionable feedback beyond basic XML validation.\u003c/p\u003e\n"],["\u003cp\u003eThe validator supports pre-election data, election results, and officeholder feed types, with tailored rule sets for each.\u003c/p\u003e\n"],["\u003cp\u003eValidation checks encompass three levels: errors (must be fixed), warnings (should be addressed), and informational messages (optional improvements).\u003c/p\u003e\n"],["\u003cp\u003eUtilizing the validator ensures your feed is optimized for Google's ingestion process and enhances the user experience.\u003c/p\u003e\n"]]],[],null,["# Feed validation tool\n\nWe maintain an\n[open-source feed validator](https://github.com/google/civics_cdf_validator)\ndesigned to provide specific, actionable feedback beyond simple XML validation.\nThe validator is available through the\n[standard Python package management tool](https://pypi.org/project/civics-cdf-validator/): \n\n bash:~$ pip install civics_cdf_validator\n\nThe following example shows how to use it: \n\n bash:~$ civics_cdf_validator validate your_feed.xml --xsd civics_cdf_specx.xsd --rule_set=RULE_SET\n\nFor a list of common commands, see\n[README](https://github.com/google/civics_cdf_validator/blob/master/README.md).\n\nSupported feed types\n--------------------\n\nThe validator supports the following feed types:\n\n- Pre-election data\n- Election results\n- Officeholder\n\nTo make sure you don't miss some validation rules, specify your feed type with\n`RULE_SET`:\n\n| Feed type | `RULE_SET` value |\n|--------------------------------------|------------------|\n| Officeholder | `OFFICEHOLDER` |\n| Pre-election data / Election results | `ELECTION` |\n\nLevels of validation checks\n---------------------------\n\nThe feed validation tool runs three classes of checks:\n\n- **Error:** If you see *any* errors, Google can't parse the file. Eliminate\n *all* error messages from your feeds before you send your data. If you need\n assistance to address your error messages, file a bug in your component.\n\n- **Warning:** Warnings flag scenarios that aren't supposed to happen, aren't\n great user experiences, or are *likely* errors that need to be fixed. For\n example, a warning is given if you provide candidate names in ALL CAPITAL\n LETTERS. Try to fix all of the warnings given, and expect for us to ask\n follow-up questions if the validator identifies warnings in a feed.\n\n- **Info:** Info messages indicate scenarios that don't affect the automated\n ingestion of a feed or the user experience but that help someone read and\n understand the layout of your data. Fixing info messages is optional.\n\n| **Note:** The feed validator is the most effective and efficient way to prepare your feed for ingestion. We recommend that you install and run it on your feeds before you send them to Google."]]