An open, JSON-based protocol for structured applicant data
v1.0.0 DraftFull protocol specification with design goals, architecture, and field definitions.
Read SpecExisting standards are fragmented, outdated, or locked to specific vendors. APP unifies the best ideas into one modern, open protocol.
Human-readable, machine-validatable. No XML complexity.
Export to HR-XML, Europass, JSON Resume, ATS formats
Confidence scores, skill embeddings, JSON-LD semantic layer
Layered architecture: core + enrichment + evidence
Semantic versioning, immutable specs, backward compatible
Community-driven, no vendor lock-in, Apache-2.0 license
Mature but heavyweight XML. Enterprise-focused, not developer-friendly. Complex schemas that are hard to implement.
EU-specific, limited global adoption. Tied to government infrastructure. Not designed for AI/ML workflows.
Developer-friendly but limited scope. No confidence metrics, no semantic layer, no evidence/verification support.
Proprietary, fragmented. Each platform uses different field names. No interoperability between systems.
{
"protocol": {
"name": "ApplicantProfileProtocol",
"shortName": "APP",
"version": "1.0.0",
"uri": "https://app-protocol.org/spec/1.0",
"id": "urn:app-protocol:profile:abc123"
},
"basics": {
"name": { "given": "Ada", "family": "Lovelace" },
"headline": "Software Engineer",
"summary": "Passionate about reliable systems"
},
"skills": [
{ "name": "TypeScript", "level": "Expert", "years": 6 }
]
}
npm install -g applicant-profile-protocol
app validate profile.json
app export:jsonresume profile.json > resume.json