{
  "dataSource": "/OpenForum/AddOn/PaperScape/DependencyModelView/example-dependency-model.dmv.json",
  "model": {
    "title": "DependencyModelView Build Roadmap",
    "dependencies": [
      {
        "id": "example-json",
        "title": "Example Model JSON",
        "description": "Sample dependency data"
      },
      {
        "id": "dependency-element",
        "title": "DependencyElement.js",
        "description": "Renders oval shapes"
      },
      {
        "id": "dependency-arrow",
        "title": "DependencyArrow.js",
        "description": "Draws connection arrows"
      },
      {
        "id": "core-app",
        "title": "Core Application",
        "description": "Main app logic & canvas"
      },
      {
        "id": "interactive",
        "title": "Interactive Features",
        "description": "Edit & create controls"
      },
      {
        "id": "paperscape",
        "title": "PaperScape Integration",
        "description": "Drag-drop & file I/O"
      },
      {
        "id": "build-system",
        "title": "ServiceBuilder Config",
        "description": "Build script.build.json"
      },
      {
        "id": "ux-polish",
        "title": "UX Polish",
        "description": "Styling & advanced features"
      }
    ],
    "relationships": [
      {
        "id": "rel1",
        "type": "requires",
        "source": "core-app",
        "target": "dependency-element",
        "label": "renders with",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel2",
        "type": "requires",
        "source": "core-app",
        "target": "dependency-arrow",
        "label": "draws with",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel3",
        "type": "uses",
        "source": "core-app",
        "target": "example-json",
        "label": "loads",
        "extensions": {
          "giraffe": {
            "style": "dashed"
          }
        }
      },
      {
        "id": "rel4",
        "type": "requires",
        "source": "interactive",
        "target": "core-app",
        "label": "extends",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel5",
        "type": "requires",
        "source": "paperscape",
        "target": "core-app",
        "label": "integrates",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel6",
        "type": "requires",
        "source": "build-system",
        "target": "dependency-element",
        "label": "assembles",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel7",
        "type": "requires",
        "source": "build-system",
        "target": "dependency-arrow",
        "label": "assembles",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel8",
        "type": "requires",
        "source": "build-system",
        "target": "core-app",
        "label": "combines",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel9",
        "type": "requires",
        "source": "ux-polish",
        "target": "interactive",
        "label": "enhances",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      },
      {
        "id": "rel10",
        "type": "requires",
        "source": "ux-polish",
        "target": "paperscape",
        "label": "refines",
        "extensions": {
          "giraffe": {
            "style": "solid"
          }
        }
      }
    ]
  },
  "view": {
    "dependencies": [
      { "type": "DependencyModelDependencyView", "dependencyId": "example-json", "x": 100, "y": 80, "color": "amber" },
      { "type": "DependencyModelDependencyView", "dependencyId": "dependency-element", "x": 100, "y": 200, "color": "blue" },
      { "type": "DependencyModelDependencyView", "dependencyId": "dependency-arrow", "x": 100, "y": 320, "color": "teal" },
      { "type": "DependencyModelDependencyView", "dependencyId": "core-app", "x": 400, "y": 200, "color": "violet" },
      { "type": "DependencyModelDependencyView", "dependencyId": "interactive", "x": 400, "y": 340, "color": "emerald" },
      { "type": "DependencyModelDependencyView", "dependencyId": "paperscape", "x": 650, "y": 200, "color": "rose" },
      { "type": "DependencyModelDependencyView", "dependencyId": "build-system", "x": 400, "y": 80, "color": "amber" },
      { "type": "DependencyModelDependencyView", "dependencyId": "ux-polish", "x": 650, "y": 340, "color": "blue" }
    ]
  }
}
