Reference

Technical resources for implementing Deeprank Profiles. Download schema files, review the controlled vocabulary, and use templates as starting points.

Schema Structure

deeprank-profile.schema.json (excerpt)
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://deeprank.org/schema/deeprank-profile.schema.json",
  "title": "Deeprank Selection Profile",
  "description": "The atomic unit of AI-readable business identity",
  "type": "object",
  "required": [
    "identity",
    "problem_declaration",
    "capability",
    "fit_conditions",
    "non_fit",
    "stability"
  ],
  "properties": {
    "identity": {
      "type": "object",
      "required": ["name", "entity_type"],
      "properties": {
        "name": { "type": "string" },
        "entity_type": { "type": "string" },
        "domain": { "type": "string", "format": "hostname" }
      }
    },
    "problem_declaration": {
      "type": "object",
      "required": ["problem_class", "description"],
      "properties": {
        "problem_class": { "type": "string" },
        "description": { "type": "string", "maxLength": 500 }
      }
    },
    "capability": {
      "type": "object",
      "required": ["labels"],
      "properties": {
        "labels": { "type": "array", "items": { "type": "string" } },
        "methods": { "type": "array", "items": { "type": "string" } }
      }
    },
    "fit_conditions": {
      "type": "object",
      "properties": {
        "geographic": { "type": "array", "items": { "type": "string" } },
        "customer_type": { "type": "array", "items": { "type": "string" } },
        "constraints": { "type": "array", "items": { "type": "string" } }
      }
    },
    "non_fit": {
      "type": "object",
      "required": ["exclusions"],
      "properties": {
        "exclusions": { "type": "array", "items": { "type": "string" } }
      }
    },
    "stability": {
      "type": "object",
      "required": ["confidence"],
      "properties": {
        "confidence": { "type": "string", "enum": ["high", "medium", "low"] },
        "last_verified": { "type": "string", "format": "date" }
      }
    }
  }
}

Controlled Vocabulary

The controlled vocabulary provides standardized terms for key fields. Using these terms ensures consistent matching across AI systems.

Entity Types

law-firmaccounting-practicemarketing-agencyconsulting-firmsoftware-companysaas-productplumbing-contractorelectrical-contractorreal-estate-brokeragemedical-practicedental-practicefinancial-advisorinsurance-agencystaffing-agencydesign-studioarchitecture-firm

Problem Classes

legal-immigration-employmentlegal-immigration-familylegal-corporatelegal-litigationaccounting-tax-businessaccounting-tax-individualaccounting-auditmarketing-b2b-saasmarketing-ecommercemarketing-localplumbing-emergencyplumbing-residentialplumbing-commercialdevelopment-webdevelopment-mobiledevelopment-ecommerce

Customer Types

b2b-saasb2b-enterpriseb2c-consumersmbstartupsolopreneurtechnology-companyemployer-sponsorhomeownerrentercommercial-tenantseries-a-to-cpre-seedbootstrapped

Common Constraints

same-day-availableemergency-service24-7-supportweekend-availableremote-onlyon-site-requiredlicensed-gas-worklicensed-electricalaccepts-insurancepayment-plansfree-consultationfixed-pricing

Implementation Notes

JSON-LD Context: When embedding a Deeprank Profile as JSON-LD, use the context URL https://deeprank.org/schema and the type DeeprankSelectionProfile.

Validation: Validate your profile against the JSON Schema before deployment. Invalid profiles may be rejected or receive lower confidence scores.

Custom Terms: If your business requires terms not in the controlled vocabulary, you may use custom terms. However, standardized terms have better cross-system compatibility.

Updates: When updating your profile, always update the stability.last_verified field to signal active maintenance.

Reference Implementations

This specification is implementation-agnostic. Tooling that implements the Deeprank Profile specification may exist independently of this reference.