Thanks, it’s definitely an improvement even thou it takes a very long time to scan all the tiddlers. I’ll need to think on it some more, though, because I forgot we also do a kind of dynamic transclusion in macros, not just generated hardlinks - so those still are orphans.
Background: So like we will have Measurements A, B, C which have main documentation tiddlers A, B, C. The tiddler text of A is just <<measurement()>> - that’s all, a template macro, which inspects the data for A in the fields and renders the body from transcluding other tiddlers. If a Measurement’s data is like:
Name: A
Structure: Heart
Unit: mm, cm
There is a database-generated Tiddler with title A with text <<measurement()>> and fields in the tiddler:
Measurement.Name: A
Measurement.Structure: Left Ventricle
Measurement.Unit: mm, cm
And there is commentary in separate tiddlers which are user edited on demand
Title: $:/DataMart/Text.Measurement.Name.Description:Name=A
Text:
Title: $:/DataMart/Text.Measurement.Structure.Description:Name=A
Text: Only applies to Left Ventricle, also see some other measurement in the Aorta
Title: $:/DataMart/Text.Measurement.Unit.Description:Name=A
Text: mm units are used for pediatric patients, cm units are used for adult patients
And then the measurement() macro builds the whole page transcluding all the building blocks:
A
Some header included from $/DataMart/Text.Measurement.Header:Name=A
A table of each field, its possible values and the editorial discussion about the data:
Name: A
Structure: Left Ventricle - Only applies to Left Ventricle, also see some other measurement in the Aorta
Unit: mm, cm - mm units are used for pediatric patients, cm units are used for adult patients
Some footer included from $/DataMart/Text.Measurement.Footer:Name=A