2023-09-28 22:51:51 +00:00
|
|
|
l: Left Constant Near {
|
|
|
|
|
direction: right
|
|
|
|
|
near: center-left
|
2023-09-28 22:18:45 +00:00
|
|
|
|
|
|
|
|
default -> layout -> here
|
2023-09-28 22:51:51 +00:00
|
|
|
default: {
|
|
|
|
|
direction: right
|
|
|
|
|
dagre -- elk -- tala: or
|
|
|
|
|
}
|
|
|
|
|
default.* -> layout: runs this
|
2023-09-28 22:18:45 +00:00
|
|
|
|
|
|
|
|
here: {
|
|
|
|
|
grid-columns: 3
|
|
|
|
|
|
|
|
|
|
this -> is
|
2023-09-28 22:51:51 +00:00
|
|
|
|
|
|
|
|
this: {
|
|
|
|
|
grid-rows: 5
|
|
|
|
|
row 1 -> row 2 -> row 3 -> row 4 -> row 5
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
is -> grid: A {style.font-size: 24}
|
|
|
|
|
|
|
|
|
|
grid: {
|
|
|
|
|
shape: sequence_diagram
|
|
|
|
|
|
|
|
|
|
with -> a -> sequence diagram -> you can
|
|
|
|
|
|
|
|
|
|
you can: {
|
|
|
|
|
grid-rows: 2
|
|
|
|
|
grid-columns: 2
|
|
|
|
|
grid-gap: 0
|
|
|
|
|
|
|
|
|
|
have
|
|
|
|
|
another
|
|
|
|
|
grid: {
|
|
|
|
|
grid-rows: 3
|
|
|
|
|
horizontal-gap: 10
|
|
|
|
|
vertical-gap: 20
|
|
|
|
|
1 -> 2 -> 3
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
here and: {
|
|
|
|
|
shape: sequence_diagram
|
|
|
|
|
continue -> nesting
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
this.row 2 -> is.child of is.grandchild: {class: green}
|
|
|
|
|
# this.row 2 -> grid.you can
|
|
|
|
|
}
|
|
|
|
|
here.this.row 5 -> default.dagre: straight edge across {class: green}
|
|
|
|
|
here.this.row 1 <- default.tala: straight edge across nested types {class: green}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
center -> directions: default layout
|
|
|
|
|
|
2023-09-28 23:28:49 +00:00
|
|
|
center: {
|
|
|
|
|
rectangle: {shape: "rectangle"}
|
|
|
|
|
square: {shape: "square"}
|
|
|
|
|
page: {shape: "page"}
|
|
|
|
|
parallelogram: {shape: "parallelogram"}
|
|
|
|
|
document: {shape: "document"}
|
|
|
|
|
cylinder: {shape: "cylinder"}
|
|
|
|
|
queue: {shape: "queue"}
|
|
|
|
|
package: {shape: "package"}
|
|
|
|
|
step: {shape: "step"}
|
|
|
|
|
callout: {shape: "callout"}
|
|
|
|
|
stored_data: {shape: "stored_data"}
|
|
|
|
|
person: {shape: "person"}
|
|
|
|
|
diamond: {shape: "diamond"}
|
|
|
|
|
oval: {shape: "oval"}
|
|
|
|
|
circle: {shape: "circle"}
|
|
|
|
|
hexagon: {shape: "hexagon"}
|
|
|
|
|
cloud: {shape: "cloud"}
|
|
|
|
|
|
|
|
|
|
rectangle -> square -> page
|
|
|
|
|
parallelogram -> document -> cylinder
|
|
|
|
|
queue -> package -> step
|
|
|
|
|
callout -> stored_data -> person
|
|
|
|
|
diamond -> oval -> circle
|
|
|
|
|
hexagon -> cloud
|
|
|
|
|
|
|
|
|
|
*.style.multiple: true
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-28 22:51:51 +00:00
|
|
|
directions: {
|
|
|
|
|
grid-rows: 3
|
|
|
|
|
|
|
|
|
|
r: right {
|
|
|
|
|
direction: right
|
|
|
|
|
1 -> 2 -> 3
|
|
|
|
|
2 -> 4
|
|
|
|
|
}
|
|
|
|
|
l: left {
|
|
|
|
|
direction: left
|
|
|
|
|
1 -> 2 -> 3
|
|
|
|
|
2 -> 4
|
|
|
|
|
}
|
|
|
|
|
v: "" {
|
|
|
|
|
grid-columns: 2
|
|
|
|
|
grid-gap: 0
|
|
|
|
|
u: up {
|
|
|
|
|
direction: up
|
|
|
|
|
1 -> 2 -> 3
|
|
|
|
|
2 -> 4
|
|
|
|
|
}
|
|
|
|
|
d: down {
|
|
|
|
|
direction: down
|
|
|
|
|
1 -> 2 -> 3
|
|
|
|
|
2 -> 4
|
|
|
|
|
}
|
2023-09-28 22:18:45 +00:00
|
|
|
}
|
|
|
|
|
}
|
2023-09-28 22:51:51 +00:00
|
|
|
|
|
|
|
|
# center -> tl
|
|
|
|
|
r: Right Constant Near {
|
|
|
|
|
near: center-right
|
|
|
|
|
|
|
|
|
|
grid-columns: 5
|
|
|
|
|
|
2023-09-28 23:28:49 +00:00
|
|
|
is -> constant.n -> and -> also.a -> grid: {class: green}
|
2023-09-28 22:51:51 +00:00
|
|
|
constant.n: near
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-28 23:28:49 +00:00
|
|
|
center -> seq: default layout
|
|
|
|
|
|
|
|
|
|
seq: {
|
|
|
|
|
shape: sequence_diagram
|
|
|
|
|
scorer: {
|
|
|
|
|
style.stroke: red
|
|
|
|
|
style.stroke-width: 5
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
scorer.abc: {
|
|
|
|
|
style.fill: yellow
|
|
|
|
|
style.stroke-width: 7
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
scorer -> itemResponse.a: {
|
|
|
|
|
style.stroke-width: 10
|
|
|
|
|
}
|
|
|
|
|
itemResponse.a -> item.a.b
|
|
|
|
|
item.a.b -> essayRubric.a.b.c
|
|
|
|
|
essayRubric.a.b.c -> concept.a.b.c.d
|
|
|
|
|
item.a -> essayRubric.a.b
|
|
|
|
|
concept.a.b.c.d -> itemOutcome.a.b.c.d.e
|
|
|
|
|
|
|
|
|
|
scorer.abc -> item.a
|
|
|
|
|
|
|
|
|
|
itemOutcome.a.b.c.d.e -> scorer
|
|
|
|
|
scorer -> itemResponse.c
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
center -> more: default layout
|
|
|
|
|
|
|
|
|
|
more: {
|
2023-09-29 01:00:53 +00:00
|
|
|
grid-rows: 2
|
2023-09-28 23:28:49 +00:00
|
|
|
stylish: {
|
2023-09-29 01:00:53 +00:00
|
|
|
grid-columns: 2
|
|
|
|
|
horizontal-gap: 100
|
2023-09-28 23:28:49 +00:00
|
|
|
x: {
|
|
|
|
|
style: {
|
|
|
|
|
opacity: 0.6
|
|
|
|
|
fill: orange
|
|
|
|
|
stroke: "#53C0D8"
|
|
|
|
|
stroke-width: 5
|
|
|
|
|
shadow: true
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
y: {
|
|
|
|
|
style: {
|
|
|
|
|
stroke-dash: 5
|
|
|
|
|
opacity: 0.6
|
|
|
|
|
fill: red
|
|
|
|
|
3d: true
|
|
|
|
|
stroke: black
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
x -> y: in style {
|
|
|
|
|
style: {
|
2023-09-29 01:00:53 +00:00
|
|
|
stroke: purple
|
2023-09-28 23:28:49 +00:00
|
|
|
stroke-width: 2
|
|
|
|
|
stroke-dash: 5
|
|
|
|
|
fill: lavender
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-09-29 01:00:53 +00:00
|
|
|
stylish.y -> container.a_sequence: {class: green}
|
|
|
|
|
|
|
|
|
|
container: {
|
|
|
|
|
a_shape.shape: circle
|
|
|
|
|
a_sequence: {
|
|
|
|
|
shape: sequence_diagram
|
|
|
|
|
|
|
|
|
|
scorer.t -> itemResponse.t: getItem()
|
|
|
|
|
scorer.t <- itemResponse.t: item
|
|
|
|
|
|
|
|
|
|
scorer.t -> item.t1: getRubric()
|
|
|
|
|
scorer.t <- item.t1: rubric
|
|
|
|
|
|
|
|
|
|
scorer.t -> essayRubric.t: applyTo(essayResp)
|
|
|
|
|
itemResponse -> essayRubric.t.c
|
|
|
|
|
essayRubric.t.c -> concept.t: match(essayResponse)
|
|
|
|
|
scorer <- essayRubric.t: score
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
a_shape -> a_sequence
|
|
|
|
|
a_sequence -> sequence
|
|
|
|
|
a_shape -- finally
|
|
|
|
|
|
|
|
|
|
finally: {
|
|
|
|
|
shape: queue
|
|
|
|
|
sequence: {
|
|
|
|
|
shape: sequence_diagram
|
|
|
|
|
# items appear in this order
|
|
|
|
|
scorer: {
|
|
|
|
|
style.stroke: red
|
|
|
|
|
style.stroke-dash: 2
|
|
|
|
|
}
|
|
|
|
|
concept: {
|
|
|
|
|
style.stroke-width: 6
|
|
|
|
|
}
|
|
|
|
|
essayRubric
|
|
|
|
|
item
|
|
|
|
|
itemOutcome
|
|
|
|
|
itemResponse
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
finally -- sequence
|
|
|
|
|
|
|
|
|
|
# full path edges
|
|
|
|
|
finally.sequence.itemResponse.a -> finally.sequence.item.a.b
|
|
|
|
|
finally.sequence.item.a.b -> finally.sequence.essayRubric.a.b.c
|
|
|
|
|
finally.sequence.essayRubric.a.b.c -> finally.sequence.concept.a.b.c.d
|
|
|
|
|
finally.sequence.item.a -> finally.sequence.essayRubric.a.b
|
|
|
|
|
finally.sequence.concept.a.b.c.d -> finally.sequence.itemOutcome.a.b.c.d.e
|
|
|
|
|
finally.sequence.scorer.abc -> finally.sequence.item.a
|
|
|
|
|
finally.sequence.itemOutcome.a.b.c.d.e -> finally.sequence.scorer
|
|
|
|
|
finally.sequence.scorer -> finally.sequence.itemResponse.c
|
|
|
|
|
}
|
2023-09-28 23:28:49 +00:00
|
|
|
}
|
|
|
|
|
|
2023-09-29 01:00:53 +00:00
|
|
|
more.container.a_sequence -> directions.v.d.4: {class: green}
|
2023-09-28 23:28:49 +00:00
|
|
|
directions.l.2 -> center.step: {class: green}
|
|
|
|
|
center.step -> more.stylish.x: {class: green}
|
|
|
|
|
|
|
|
|
|
center.cloud -> more.stylish
|
|
|
|
|
|
|
|
|
|
classes.green.style: {
|
|
|
|
|
stroke: green
|
|
|
|
|
stroke-width: 5
|
|
|
|
|
}
|