Validate geographic data contributions against the CSC database schema. Use this skill whenever you encounter a PR that adds, modifies, or deletes data in the contributions/ directory. Trigger on: validate, check, review, verify, audit, inspect, or assess any data contribution, PR review requests, schema compliance checks, field validation, or when someone says "is this correct", "check my data", "validate this", or "review my PR". Also use when asked about required fields, allowed values, or data format rules. Read schema-rules.md in this directory for the complete field specification.
71
86%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
When validating a contribution, follow these steps in order:
Determine whether the contribution is for cities, states, or countries based on the file path or content structure.
The following fields must NOT be present in contributions (they are auto-managed):
idcreated_atupdated_atflagIf any are present, flag as an error and instruct the contributor to remove them.
Read the schema-rules.md file in this skill's directory for the complete field specifications, constraints, and example records per entity type. Use it as the authoritative reference for all field validation.
Cities require: name, state_id, state_code, country_id, country_code, latitude, longitude
States require: name, country_id, country_code
Countries require: name
country_code: must be exactly 2 uppercase letters (ISO 3166-1 alpha-2)latitude: must be a decimal number between -90 and 90longitude: must be a decimal number between -180 and 180name: must be non-empty, max 255 characters (100 for countries)wikiDataId: must match pattern Q followed by digits (e.g., Q65)state_id, country_id: must be positive integerscountries.json and states.json filescountry_id exists in the countries datacountry_code matches the ISO2 code of the referenced countrystate_id exists in states data AND belongs to the specified countrystate_code matches the code of the referenced statePresent results as a clear validation checklist:
### Validation Results for [filename]
**Schema Compliance:**
- [PASS/FAIL] Required fields present
- [PASS/FAIL] No auto-managed fields included
- [PASS/FAIL] Field formats valid
**Cross-References:**
- [PASS/FAIL] country_id [X] exists ([country name])
- [PASS/FAIL] country_code "[XX]" matches country_id
- [PASS/FAIL] state_id [X] exists ([state name])
- [PASS/FAIL] state_code "[XX]" matches state_id
**Data Quality:**
- [PASS/WARN] Coordinates within country bounds
- [PASS/WARN] No duplicates detected
**Overall: [PASS / NEEDS CHANGES]**81d1277
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.