Overview
The Digital Planning Data Schemas system includes several schema types that represent different stages and contexts of the planning application process. Each schema type is optimized for its specific use case.Schema Types
Application
The general-purpose schema for planning applications generated by digital planning services./types/schemas/application/index.ts
Key Features
Key Features
- General-purpose structure for any planning application
- Includes pre-assessment results when applicable
- Flexible file handling with both embedded file data and file references
- Metadata from any digital planning service provider
PrototypeApplication
The prototype schema for planning applications in England, designed for applications generated before submission (e.g., via PlanX)./types/schemas/prototypeApplication/index.ts
Supported Application Types
Supported Application Types
The PrototypeApplication schema supports over 80 specific application types:Lawful Development Certificates
- Existing use (
ldc.existing) - Proposed use (
ldc.proposed) - Breach of condition (
ldc.breachOfCondition) - Listed building works (
ldc.listedBuildingWorks)
- Part 1, Class A: Extensions to dwellings (
pa.part1.classA) - Part 3, Class Q: Agricultural buildings to dwellings (
pa.part3.classQ) - Part 6, Class A: Agricultural buildings (
pa.part6.classA) - Part 20, Class A: Demolition of buildings (
pa.part20.classA)
- Full Householder (
pp.full.householder) - Full Minor (
pp.full.minor) - Full Major (
pp.full.major) - Outline applications (
pp.outline.*)
- Works to trees consent/notice (
wtt.consent,wtt.notice) - Listed building consent (
listed) - Hedgerow removal notice (
hedgerowRemovalNotice) - And more…
Type-Specific Structures
Type-Specific Structures
The schema uses TypeScript generics to provide type-specific variations:
/examples/prototypeApplication/planningPermission/fullHouseholder.json
PreApplication
The schema for pre-application advice requests./types/schemas/preApplication/index.ts
- Simplified applicant data requirements
- No fee calculation (advice may have separate fee structure)
- Focus on proposal description and initial assessment
PostSubmissionApplication
The schema for planning applications after they’ve been submitted to and are being processed by a back-office planning system./types/schemas/postSubmissionApplication/index.ts
Post-Submission Data Model
Post-Submission Data Model
The post-submission schema includes additional data that accumulates during processing:Validation StageConsultation StageAssessment StageAppeal Stage
Comments System
Comments System
The schema includes structured support for public and specialist comments:
- Complete audit trail with process stages
- Local planning authority assignment
- Case officer details
- Public and specialist consultation comments
- Assessment decisions and conditions
- Appeal information
- Enhanced file metadata with associations
PostSubmissionPublishedApplication
A variant of PostSubmissionApplication intended for public-facing APIs, with potentially redacted sensitive information./types/schemas/postSubmissionPublishedApplication/index.ts
Currently shares the same structure as PostSubmissionApplication. Future versions may include redactions for data protection.
Enforcement
The schema for planning enforcement breach reports./types/schemas/enforcement/index.ts
Breach Types
Breach Types
The enforcement schema supports various breach categories:
- Unauthorized building work
- Change of use without permission
- Breach of planning conditions
- Works to protected trees
- Listed building violations
- Advertisement violations
- And more…
- Complainant information (may be anonymous)
- Temporal tracking (when did the breach start/end)
- Spatial boundary of the breach
- Categorization by breach type
- Supporting evidence files
Type Relationships
Common Patterns
Generic Type Parameters
Many schemas use TypeScript generics to provide type-specific variations:Shared Components
All schemas reuse common components:- Responses: Question/answer pairs
- Files: File upload metadata
- Metadata: Submission and service metadata
- User: User roles and data
- Addresses: UK address structures
- Boundaries: GeoJSON spatial data
Choosing the Right Schema
Building a Planning Service?
Use PrototypeApplication to structure data as users complete your digital planning service.
Building a Back Office System?
Use PostSubmissionApplication to manage applications through validation, consultation, and assessment.
Building a Public Register?
Use PostSubmissionPublishedApplication for public-facing APIs.
Accepting Enforcement Reports?
Use Enforcement for breach reporting services.
Next Steps
Validation
Learn how to validate data against these schemas