Skip to content
This repository is currently being migrated. It's locked while the migration is in progress.

Add JSON Schema for VA Form 22-1999#1169

Draft
tarratsco wants to merge 7 commits into
masterfrom
optimus/22-1999-schema
Draft

Add JSON Schema for VA Form 22-1999#1169
tarratsco wants to merge 7 commits into
masterfrom
optimus/22-1999-schema

Conversation

@tarratsco

Copy link
Copy Markdown
Contributor

⚠️ AI-Generated PR — This pull request was automatically generated by Optimus. All code requires human review and testing before merging.

New schema — VA Form 22-1999

Summary

This PR introduces a new JSON Schema (Draft 04) for VA Form 22-1999 — Enrollment Certification, used by School Certifying Officials (SCOs) to certify student enrollment for GI Bill education benefits.

The schema covers the following form sections:

  • SCO Verification (scoVerification) — confirms the certifying official's attestation
  • Certification Type Info (certificationTypeInfo) — captures the type of enrollment certification being submitted
  • Student Information (studentInformation) — identifies the student beneficiary
  • Institution Information (institutionInformation) — identifies the school or training facility, with a shared address definition requiring street, city, state, and postalCode
  • Program Information (programInformation) — describes the educational program
  • Enrollment Period (enrollmentPeriod) — specifies the term or date range being certified
  • Credit Hours (creditHours) — records the student's enrolled credit load
  • Certifying Official (certifyingOfficial) — captures signature and identity of the SCO submitting the form

Key patterns include:

  • additionalProperties: false enforced at the root and on the shared address definition to prevent undeclared fields
  • All eight top-level sections are marked required, ensuring complete submissions
  • Reusable address definition with optional street2 field and string length constraints (minLength: 1, maxLength: 100)
  • Draft 04 compliance throughout

Files

  • src/schemas/22-1999-schema.json

Notes for reviewer

  • Please ensure you have incremented the version in package.json
  • Please add backend-review-group as a reviewer
  • The address definition enforces additionalProperties: false — confirm this aligns with any address formats used in vets-api or vets-website for related education forms
  • All eight root-level fields are required; confirm with the form owner whether any sections (e.g., certificationTypeInfo) should be conditionally required based on submission context
  • street2 is intentionally optional within the address definition — verify this is consistent with how other education benefit schemas handle optional address lines
  • Confirm that Draft 04 is the appropriate schema draft version for this integration, given that some newer vets-json-schema entries have migrated toward Draft 07

Pull Requests to update the schema in related repositories

  • vets-api: pending
  • vets-website: pending

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants