Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
projects:quantum:knowform [2026/05/21 07:30] – [Knowform] kymkiprojects:quantum:knowform [2026/05/21 07:34] (current) – [Current State] kymki
Line 27: Line 27:
 I wanted to explore how far a strongly typed Rust system could be pushed as a foundation for knowledge graph construction. I wanted to explore how far a strongly typed Rust system could be pushed as a foundation for knowledge graph construction.
  
-A lot of organisational data already exists in structured or semi-structured formats. Employee records, project descriptions, CVs, time reports, department structures, and metadata can all describe relationships. Knowform was an attempt to make those relationships explicit.+A lot of organisational data already exists in structured or semi-structured formats as shown in the mockup data. Employee records, project descriptions, CVs, time reports, department structures, and metadata can all describe relationships. Knowform was an attempt to make those relationships explicit.
  
 The project is also a way to experiment with strategic mapping. Instead of only storing facts about an organisation, the system tries to infer useful relationships between those facts. Examples include employees belonging to units, employees being active in projects, projects having time reports, and documents being associated with employees or projects. The project is also a way to experiment with strategic mapping. Instead of only storing facts about an organisation, the system tries to infer useful relationships between those facts. Examples include employees belonging to units, employees being active in projects, projects having time reports, and documents being associated with employees or projects.
Line 33: Line 33:
 ===== Design ===== ===== Design =====
  
-Knowform is built around a few main ideas.+Knowform is built around a few main ideas and design decisions.
  
   * JSON is used as the ingest format.   * JSON is used as the ingest format.
Line 44: Line 44:
  
 Rust was chosen because the project depends heavily on type safety. The data model has many entity types and relationship rules, so compile-time checks are useful. Rust also fits the performance side of the idea: ingesting larger datasets, processing relationships, and building graph structures should be fast and predictable. Rust was chosen because the project depends heavily on type safety. The data model has many entity types and relationship rules, so compile-time checks are useful. Rust also fits the performance side of the idea: ingesting larger datasets, processing relationships, and building graph structures should be fast and predictable.
 +
 +Also writing Rust code makes me happy. 
  
 ===== Ontology Support ===== ===== Ontology Support =====
Line 57: Line 59:
 ===== Current State ===== ===== Current State =====
  
-Knowform is a personal framework and prototype. It is not a polished product.+Knowform is a piece in a framework on prototype stage. It is not a polished product.
  
 The main value of the project is the architecture and the exploration of how organisational knowledge can be modeled as a graph. The codebase contains support for REST endpoints, JSON ingest, graph construction, edge rules, metadata tracking, and Neo4j output. The main value of the project is the architecture and the exploration of how organisational knowledge can be modeled as a graph. The codebase contains support for REST endpoints, JSON ingest, graph construction, edge rules, metadata tracking, and Neo4j output.
  
-Some parts are still rough. Some model fields are pragmatic rather than elegant. The project also reflects experimentation with graph theory, category theory concepts, and Rust application structure.+Some parts are still rough. Some model fields are pragmatic rather than elegant (which was also my initial goal - function before looks). The project also reflects experimentation with graph theory, and Rust application structure.
  
 ===== Direction ===== ===== Direction =====