core/graph/di_graph-0.1.0#

Directed Graph.

Description

A basic directed graph.

The graph must represent a tree starting from the root node. Edges can be defined in forward or backward direction from the root node.

Outline

Schema Definitions

This type is an object with the following properties:
  • root_node
    asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.*Required

Examples

A directed graph with two branches:

!<asdf://weldx.bam.de/weldx/tags/core/graph/di_graph-0.1.0>
  root_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
    name: A
    attributes: {node_attr: 3.14}
    edges:
    - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
      direction: fwd
      attributes: {edge_attr: 42}
      target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
        name: B
        attributes: {node_attr: 3.14}
        edges:
        - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
          direction: fwd
          attributes: {edge_attr: 42}
          target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
            name: H
            attributes: {node_attr: 3.14}
    - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
      direction: fwd
      attributes: {edge_attr: 42}
      target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
        name: C
        attributes: {node_attr: 3.14}
        edges:
        - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
          direction: bwd
          attributes: {edge_attr: 42}
          target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
            name: D
            attributes: {node_attr: 3.14}

Original Schema

%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "asdf://weldx.bam.de/weldx/schemas/core/graph/di_graph-0.1.0"

title: |
  Directed Graph.
description: |
  A basic directed graph.

  The graph must represent a tree starting from the root node.
  Edges can be defined in forward or backward direction from the root node.

examples:
  -
    - A directed graph with two branches
    - |
      !<asdf://weldx.bam.de/weldx/tags/core/graph/di_graph-0.1.0>
        root_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
          name: A
          attributes: {node_attr: 3.14}
          edges:
          - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
            direction: fwd
            attributes: {edge_attr: 42}
            target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
              name: B
              attributes: {node_attr: 3.14}
              edges:
              - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
                direction: fwd
                attributes: {edge_attr: 42}
                target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
                  name: H
                  attributes: {node_attr: 3.14}
          - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
            direction: fwd
            attributes: {edge_attr: 42}
            target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
              name: C
              attributes: {node_attr: 3.14}
              edges:
              - !<asdf://weldx.bam.de/weldx/tags/core/graph/di_edge-0.1.0>
                direction: bwd
                attributes: {edge_attr: 42}
                target_node: !<asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.0>
                  name: D
                  attributes: {node_attr: 3.14}


type: object
properties:
  root_node:
    tag: "asdf://weldx.bam.de/weldx/tags/core/graph/di_node-0.1.*"

required: [root_node]
...