Hi Gordon
Impressive implementation of simple concepts in a TW after just two weeks!!
Very well done sir :-) and thank you very much for sharing this excellent proof of concept.
I will show your example to my co-teachers - and I'm sure they will see the potential right away :-)
First thing I did when I saw your class register was to tag the StudentTemplate tiddler with $:/tags/ViewTemplate and add this extra filter before the filters already there:
"<$list filter="[is[current]tag[student]!prefix[$]]">"
Then I added the field list-after with value "$:/core/ui/ViewTemplate/tags" and removed the template call("$param="StudentTemplate"") from the create new student button in the GroupTemplate.
The reason why I did this is that I don't like to fill the text area in student tiddlers with template text (filter expressions and other "system text"). Imo it can be very confusing for a user to see all this text when you just want to add some other text in a tiddler. I guess that inputting template text in each and every student, group and class tiddler will also make the TW file size grow pretty fast.
I would change the GroupTemplate tiddler and the ClassTemplate in the same way and they will automatically show up/be transcluded in tiddlers tagged with group and class respectively.
I think your system works fine as it is.
My proposed change in working with templates as part of the ViewTemplate is just a little optimization (imo).
You can easily adapt it if you like to make it even more simple for someone else to use it to write text in the text area of student, class or group tiddlers.
Enjoy Måns Mårtensson