Which part of the project should be enhanced?
Note info sidebar — add a nodeBook-specific stats panel and scoring system.
Is your enhancement request related to a problem? Please describe.
When students write CNL knowledge graphs there is no feedback on the quality, coverage, or complexity of their work. Teachers have no quantitative way to evaluate or motivate graph construction.
Describe the solution you'd like
Add a nodeBook Info panel to the note sidebar (next to the existing Note Info). It appears only when the note contains at least one nodeBook code block. The panel displays:
Stats
- Statements: total CNL statements parsed
- Nodes: count of declared nodes, by type breakdown
- Edges: count of explicit relations
- Inferred edges: count of transitively derived relations
- Attributes: count of declared attributes
- Transitions: count of Petri net transitions
- Functions: count of function definitions
- Equations: count of
expression: directives
- Morphs: count of polymorphic state definitions
- Schemas: schemas loaded (
nodeBook-schema blocks), validated vs unvalidated nodes
- Queries: count of Wh-word and Prolog queries
- Validation: undefined node types/relations (against loaded schemas)
Scoring Rubric (proposed)
A nodeBook Score (0–100) computed from the graph to motivate structured knowledge representation:
| Category |
Max Points |
Criteria |
| Coverage |
20 |
Number of distinct nodes (diminishing returns: 5 pts at 5 nodes, 10 at 10, 15 at 20, 20 at 30+) |
| Connectivity |
15 |
Average node degree ≥ 2 (5 pts), ≥ 3 (10 pts), ≥ 4 (15 pts) |
| Typing |
15 |
% of nodes with explicit [Type] annotations (5 pts at 50%, 10 at 75%, 15 at 100%) |
| Inference depth |
10 |
Longest transitive chain length: 2 (3 pts), 3 (6 pts), 4+ (10 pts) |
| Schema use |
10 |
Has schema (5 pts), all nodes validate against schema (10 pts) |
| Processes |
10 |
Has at least 1 Transition (5 pts), transitions are balanced (prior/post states) (10 pts) |
| Computation |
10 |
Has Function or expression definitions (5 pts), chained functions (10 pts) |
| Queries |
5 |
Uses Wh-word or Prolog queries to interrogate the graph |
| Morphs |
5 |
Uses polymorphic nodes to represent state variations |
The score encourages students to:
- Build well-typed, well-connected knowledge graphs
- Use formal schemas for validation
- Model processes and computations, not just static facts
- Query their graphs to test understanding
- Explore polymorphism for nuanced representation
UI placement
- In the note sidebar (gear/info menu), as a new tab or accordion section
- Shows a circular progress indicator for the score with category breakdown below
- Color-coded: red (0–30), amber (31–60), green (61–100)
Describe alternatives you've considered
- A simpler word-count style metric, but this doesn't capture structural quality
- External grading tools, but inline feedback is more immediate and motivating
Additional context
Target audience: students learning formal knowledge representation, scientific modeling, and logical reasoning through CNL.
Which part of the project should be enhanced?
Note info sidebar — add a nodeBook-specific stats panel and scoring system.
Is your enhancement request related to a problem? Please describe.
When students write CNL knowledge graphs there is no feedback on the quality, coverage, or complexity of their work. Teachers have no quantitative way to evaluate or motivate graph construction.
Describe the solution you'd like
Add a nodeBook Info panel to the note sidebar (next to the existing Note Info). It appears only when the note contains at least one
nodeBookcode block. The panel displays:Stats
expression:directivesnodeBook-schemablocks), validated vs unvalidated nodesScoring Rubric (proposed)
A nodeBook Score (0–100) computed from the graph to motivate structured knowledge representation:
[Type]annotations (5 pts at 50%, 10 at 75%, 15 at 100%)The score encourages students to:
UI placement
Describe alternatives you've considered
Additional context
Target audience: students learning formal knowledge representation, scientific modeling, and logical reasoning through CNL.