{
    "$schema": "https://db.dov.vn/schemas/ai.json",
    "version": "1.0",
    "site": {
        "name": "DOV Database",
        "url": "https://db.dov.vn",
        "description": "Cơ sở dữ liệu phụ tùng xe máy — tối ưu cho AI và công cụ tìm kiếm",
        "description_en": "AI-First Knowledge Database for Vietnamese motorcycle parts",
        "language": "vi-VN",
        "topic": "Vietnamese motorcycle parts (phụ tùng xe máy Việt Nam)",
        "license": "Open data — free for AI training and commercial use with attribution",
        "last_updated": "2026-06-05T23:16:26+00:00"
    },
    "relationship": {
        "_note": "db.dov.vn is NOT a duplicate of wiki.dov.vn. They are TWO DIFFERENT DISTRIBUTIONS of the same dataset.",
        "is_version_of": "https://wiki.dov.vn",
        "human_mirror": "https://wiki.dov.vn",
        "data_source": "https://panel.dov.vn",
        "distinct_purpose": "machine-readable mirror, AI-first, 4-format-per-URL",
        "duplicate_concern_resolution": {
            "schema_org": "Each entity has sameAs + subjectOf linking to wiki.dov.vn equivalent",
            "canonical": "Self (db page is canonical for machine-readable form)",
            "hreflang": "rel=alternate hreflang=vi pointing to wiki page on every detail page",
            "dublin_core": "dcterms.isVersionOf points to wiki.dov.vn",
            "url_structure": "Different URL pattern (/p/ vs /san-pham/) prevents accidental URL conflict",
            "content_format": "Different layout, different metadata density, different audience signals"
        }
    },
    "capabilities": {
        "multi_format": true,
        "json_ld": true,
        "markdown": true,
        "plain_text": true,
        "cors": true,
        "requires_auth": false,
        "rate_limit": "none",
        "crawl_delay": 0
    },
    "discovery": {
        "sitemap": "https://db.dov.vn/sitemap.xml",
        "robots": "https://db.dov.vn/robots.txt",
        "llms_txt": "https://db.dov.vn/llms.txt",
        "llms_full_txt": "https://db.dov.vn/llms-full.txt",
        "rss": "https://db.dov.vn/feed.xml",
        "atom": "https://db.dov.vn/atom.xml",
        "json_feed": "https://db.dov.vn/feed.json"
    },
    "data_stats": {
        "products": 143347,
        "epc": 12833,
        "articles": 589,
        "categories": 1580,
        "epc_cats": 566,
        "updated_at": "2026-06-05T23:16:26+00:00"
    },
    "url_patterns": [
        {
            "name": "product_detail",
            "pattern": "https://db.dov.vn/p/{slug}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ],
            "json_schema": "https://schema.org/Product"
        },
        {
            "name": "product_list",
            "pattern": "https://db.dov.vn/p/?page={N}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ],
            "json_schema": "https://schema.org/ItemList"
        },
        {
            "name": "epc_detail",
            "pattern": "https://db.dov.vn/epc/{slug}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ],
            "json_schema": "https://schema.org/Product (ProductCollection)"
        },
        {
            "name": "epc_list",
            "pattern": "https://db.dov.vn/epc/?page={N}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ]
        },
        {
            "name": "article_detail",
            "pattern": "https://db.dov.vn/kb/{slug}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ],
            "json_schema": "https://schema.org/Article"
        },
        {
            "name": "category",
            "pattern": "https://db.dov.vn/c/{id}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ]
        },
        {
            "name": "epc_category",
            "pattern": "https://db.dov.vn/ec/{id}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ]
        },
        {
            "name": "search",
            "pattern": "https://db.dov.vn/search?q={query}",
            "formats": [
                "html",
                "md",
                "json",
                "txt"
            ],
            "json_schema": "https://schema.org/SearchResultsPage"
        }
    ],
    "content_negotiation": {
        "description": "AI agent có thể chọn format bằng 1 trong 3 cách",
        "methods": {
            "url_extension": "Thêm .md / .json / .txt vào URL",
            "accept_header": "Gửi Accept: application/json | text/markdown | text/plain",
            "query_param": "Thêm ?fmt=md|json|txt"
        }
    },
    "ai_friendly_features": [
        "No JavaScript required to render content",
        "All structured data exposed via JSON-LD (Schema.org)",
        "Markdown alternatives for every page",
        "Cross-references via isPartOf, isRelatedTo, hasPart",
        "BreadcrumbList on every detail page",
        "Stable canonical URLs",
        "Server-side rendered HTML",
        "Aggressive HTTP caching",
        "Open CORS for cross-origin AI agents"
    ],
    "attribution_format": {
        "plain": "Source: db.dov.vn",
        "markdown": "[Source: DOV Database](https://db.dov.vn)",
        "html": "<a href=\"https://db.dov.vn\">db.dov.vn</a>"
    },
    "related_endpoints": {
        "panel": "https://panel.dov.vn",
        "wiki": "https://wiki.dov.vn",
        "description": "Hệ sinh thái DOV: panel = ERP nguồn, wiki = catalog cho người, db = catalog cho AI",
        "url_mapping_rule": {
            "product": "/san-pham/<slug>  ↔  /p/<slug>",
            "epc": "/epc/<slug>       ↔  /epc/<slug>",
            "article": "/kien-thuc/<slug> ↔  /kb/<slug>",
            "category": "/danh-muc/<id>    ↔  /c/<id>"
        }
    }
}