{
  // Teil 9: LSP-Integration — Modell mit Status-Feldern (LSP zeigt CodeLens)
  "specification": {
    "elements": {
      "actor":     { "notation": "Actor" },
      "system":    { "notation": "Software System", "container": true },
      "container": { "notation": "Container",        "container": true }
    },
    "relationships": {
      "uses": { "notation": "uses" }
    }
  },
  "model": {
    "customer": { "kind": "actor", "title": "Customer" },
    "shop": {
      "kind": "system", "title": "Online Shop", "description": "E-Commerce Platform",
      "children": {
        "frontend": { "kind": "container", "title": "Web Frontend", "technology": "React",      "status": "deployed"       },
        "api":      { "kind": "container", "title": "REST API",      "technology": "Go",         "status": "deployed"       },
        "cache":    { "kind": "container", "title": "Redis Cache",   "technology": "Redis",      "status": "proposed"       },
        "db":       { "kind": "container", "title": "PostgreSQL",    "technology": "PostgreSQL", "status": "deployed"       }
      }
    }
  },
  "relationships": [
    { "from": "customer",      "to": "shop",      "label": "kauft ein",    "kind": "uses" },
    { "from": "shop.frontend", "to": "shop.api",  "label": "REST calls",   "kind": "uses" },
    { "from": "shop.api",      "to": "shop.db",   "label": "reads/writes", "kind": "uses" },
    { "from": "shop.api",      "to": "shop.cache","label": "cache lookup", "kind": "uses" }
  ],
  "views": {
    "context":    { "title": "System Context", "include": ["customer", "shop"] },
    "containers": { "title": "Container View", "scope": "shop", "include": ["shop.*"] }
  }
}
