An update on the SASSY project.

I have been attempting to use its rule engine to create a document from some RDF data. The data is the quality attribute descriptions. This has not been going well, and the log messages tend to indicate that something is seriously awry.

The rule engine has several components that support editing and running the rules. Two of these use generated code that converts an RDF schema into C++ structures. One then creates a text file for editing the rules; the other creates the execution model that runs the rules.

The original idea was to derive implementation classes from the generated classes. This seems to mostly work, but things get complicated if you try to access a parent class, since the derived classes no longer have a proper parent relationship.

Fortunately the code generator can also create code that is intended to use the visitor pattern. The plan is to re-implement these two parts of the rule engine using that design pattern.

#SASSY

The rule text generation is now working.

This was a practice run to get familiar with the generated data structures for the rules.

An aside:
One of the interesting features of the SASSY rule engine is that its rules are stored as RDF data. Since the purpose of the rule engine is to modify RDF data, it follows that it can modify its own rules.

The next step is to adapt the previously written classes that make up the rule interpreter. These were originally derived from the generated code, but will now be independent of it.

#SASSY