Skip to content
Novus Examples
json1.4 KB

Directed Acyclic Pipeline - JSON edge list

A six-stage software pipeline DAG for testing dependency import, cycle checks and reproducible topological sorting. This JSON edge list member carries the same node IDs, edge IDs, directions and weights as its two format twins.

Preview — first 50 linesjson
{
  "directed": true,
  "multigraph": false,
  "nodes": [
    {
      "id": "ingest",
      "label": "ingest"
    },
    {
      "id": "normalize",
      "label": "normalize"
    },
    {
      "id": "validate",
      "label": "validate"
    },
    {
      "id": "index",
      "label": "index"
    },
    {
      "id": "notify",
      "label": "notify"
    },
    {
      "id": "archive",
      "label": "archive"
    }
  ],
  "edges": [
    {
      "id": "e0",
      "source": "ingest",
      "target": "normalize",
      "weight": 1.0
    },
    {
      "id": "e1",
      "source": "ingest",
      "target": "validate",
      "weight": 1.0
    },
    {
      "id": "e2",
      "source": "normalize",
      "target": "index",
      "weight": 1.0
    },
    {
      "id": "e3",
88 lines total — download for the full file.

Specifications

Graph Format
JSON edge list
Nodes
6
Edges
7
Directed
true
Multigraph
false
Weak Components
1
Contains Cycle
false
Weight Sum
7
Topological Order
ingest -> normalize -> validate -> index -> notify -> archive

Testing contract

Expected to pass
Scenario
Import the JSON edge list member and compare graph algorithms and edge identity with the other two representations.
Expected result
Import 6 nodes and 7 edges; preserve 1 weak component(s), cycle=false, weight sum=7.0, topological result=ingest -> normalize -> validate -> index -> notify -> archive.

What is a .json file?

JSON (JavaScript Object Notation) is a lightweight, text-based data-interchange format representing objects, arrays, strings, numbers, booleans, and null. It is language-independent, human-readable, and the dominant format for web APIs and configuration. It requires a single well-formed root value.

How to use this file

Use an example JSON file to test parsers and serializers, schema validation, Unicode and number-precision handling, and API request or response processing.

How to use this file for testing

“Directed Acyclic Pipeline - JSON edge list” is a deterministic Novus Examples fixture for Graph data, Conversion testing, Data import. Node/edge datasets in GraphML and GEXF (directed and undirected, with attributes and weights) — for testing network importers, layout tools, and graph converters.

Documented properties for this file: 6 nodes · 7 edges. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.

Code examples

import json

with open("dag.json") as f:
    data = json.load(f)
print(type(data), len(data))

Generated by generation/p6_core.py. Free for any use, no attribution required — license.