#sassy

2026-02-21

@mos_8502
#SASSY will be my focus for the next week or three.

The aim of SASSY is to use a knowledge database (RDF) to support the construction of the high level design. This is, however, a bit pointless if you cannot get the data out again in a usable format.

I am taking two approaches. One for when the data is in stores that have a SASSY supplied schema, and one for where the schemas are user supplied.

The current work is on the former. The approach is to use an expert system built on top of a rule engine. A simple case has just been successfully tested. The real fun come next.

2026-02-19

Well that makes a successful day 😃

Added a few fixes to the rule engine and it now works as intended.

Nice to press a button to run the rules, then another to run the document generation, and see the test PDF change to include some text from the QA data set.

Next task is to add more templates and rules to get it to build the complete document.

#SASSY

2026-02-18

Oops, I seem to have ventured out into the land of the great untested, where the dreaded SIGSEGV roams free.

And it all begins to unravel...

Add a log message and exception to avoid the seg fault. It fails to compile.

The errors are in generated code. It appears to be from a no longer supported version of the code generator.

Seems like a thorough revisiting of the rule engine is called for.

#SASSY #programming

2026-02-18

2/2

The expert system mode combined with rules that replace one macro with data and other macros can build arbitrarily complex documents.

The first step is to make a skeleton document with whatever boilerplate is desired. This is then extended with some primary macros, and a copy made (otherwise we only get to do it once ).

Note that "macro" is actually just some more RDF statements describing what to do.

The primary rules will each search for a particular macro. The rule will remove the macro and call another rule with the location in the document as a parameter.

The secondary rule will search the data and add its results into the document, followed by any applicable macros.

#SASSY

2026-02-18

Some thoughts on SASSY

I have finally worked out how this template macro system is going to work. I knew it could be done, but the details were rather undefined.

Some background on my rule engine is probably necessary.

Each rule starts with a SPARQL query that binds values from the RDF data to variables.

Each set of values is then optionally passed to some filters (calls to plug-in library functions) and then (optionally) to an iterator that cycles over any RDF sequences or lists.

Next they are passed to the execution section where the values are used to create new RDF statements, delete existing ones, or be passed to functions (also in plug-in libraries) or used to create a call to another rule.

The system has three modes of operation: either a single rule (which can still call other rules); a sequence of rules that are each run once; or an expert system mode where the sequence of rules are executed until one does something, and then the sequence resets and starts over. This repeats until nothing is done.

1/2

#SASSY

2026-02-16

Slowly getting back into the SASSY project. It does take a while to pick up the threads after a 6 month break.

The current primary task is part of the bootstrapping process. It involves creating some rules that replace template "macros" in a document with data extracted from another RDF data set.

On inspection of the RDF for the base document I noted it was full of statements that should not have been there. This was the side effect of a bug, that has already been fixed.

My RDFGUI program can remove statements from a model, but it takes three mouse clicks for every one, and there are hundreds to be deleted. A multi-statement delete is on the TODO list, so it was time to implement it.

That change has just been completed, tested and checked into the SourceForge repository.

Now I can clean up the data, and actually start developing these rules.

#SASSY

KUVO Playlistkuvo_playlist
2026-02-15

4:13am Sassy by Kurt Elling from Sassy

An image of the cover of the record album 'Sassy' by Kurt Elling
SpringGnollspringgnoll
2026-02-15
SpringGnollspringgnoll
2026-02-15
2026-02-09
2026-02-09

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst