Definition: Pure Tiddler and Impure Tiddler

So Sad I came so late to this discussion. This being a favourite area of interest - nomenclature and I believe the experience to back it up, yet the sense to negotiate with others.

I support Mohamad’s objective here, think @Mohammad is taking it in the right direction but I think there are some fundamental mistakes being made.

I hope I still have the opportunity to contribute towards this important discussion.

  • As much as I like the use of words for general and conceptual meaning I do not think this is the right circumstances for any uncertainty in the definitions. See next point.
  • To give the terms to be used some real meaning I think we can resort to existing tiddlywiki rules, literally the rules pragma. Will the tiddler continue to be of use if only a subset of rules were in use? I will say more about this below.
  • Composite/compound are both needed but can have different meanings
    • Stand alone tiddlers are not composites or compound tiddler but may be part of others.
    • Composite made up of other tiddlers and content ie not a standalone tiddler
    • Compound tiddler made up of and dependant upon subtiddlers for its content, these subtiddlers are primarily for the content of the compound tiddler.
    • A tiddler may be both composite and compound at the same time.
  • Please do not use “index tiddler” as proposed.
    • With all due respect to those suggesting that index tiddler is equivalent to a compound tiddler it is not. Some composite tiddlers could be called index tiddlers but most can not be. Index’s have a specific purpose in many parts of computing but this would be an edge case.
    • Tiddlywiki internals has indexes, JSON and data tiddlers can act as indexes, One could call a Table of Contents or a glossary an index, even a list field or searchable list would be an index.
    • Please don’t use this term generally, it would become overloaded, if not already.
    • Fine say some composite or compound tiddlers may be indexes, but the reverse is untrue, not all compound or composite tiddlers will be indexes.

Rules based definitions;
Because I am late to the conversation I am reluctant to do the work unless other support this argument. I believe the “clear terms we use” should be able to be defined in terms of tiddlywiki pragmas.

For example Plain Wikitext/Pure/Standalone/atomic tiddlers remain usable as intended if they complied with a particular list of rules, in fact in some ways these are the most complex because we say what they are not eg;
\rules except macrocallinline import filteredtranscludeinline macrocallinline transcludeinline filteredtranscludeblock macrocallblock transcludeblock

In fact any other tiddler compound or otherwise could be made into a “plain wikitext” tiddler by applying these rules. As per my extending the type field idea (linked below) to support these definitions we could have types such as;

  • Plain wikitext (above \rules)
  • Compound includes transclusions but not other widgets/macros Plain wiki text + some more rules
  • Composite transclusions from anywhere and other widgets and macros

So each of these type(s) will have the rules pragmas applied as per the community definition

Other items

  • I think Master is not appropriate except in some very special circumstances but more fundamentally (than race relations, although I do not dismiss this in the U.S. context), Unless it controls the subtiddlers it refers to it is not a master. The subtiddlers are independent entities and can be changed without the master. A special case of compound tiddler which manages and provides access to its subtiddlers but there is no other UI to manage the subtiddlers could be a master tiddler.
  • Template is too fuzzy in tiddlywiki, we need to start to qualify them
    • ViewTemplate (as currently used)
    • Display template used to display the content of the current tiddler
    • Tiddler template used when creating new tiddlers or to apply to the current tiddler
    • Content templates - content that someone may transclude into another tiddler reusable (although may be used once)
    • Content template/templates or content template^2 - tiddler templates specifically for the purpose of cloning, editing and using as a content (possibly just a tiddler template)
  • I also argue for the development of user types for tiddlers here Extending the type field for user types? in which case there will be custom Tiddler and Display templates associated with a tiddler “type”.
    • In this case we may have a type of user/plain-wikitext OR user/compound etc… that not only calls out what kind of tiddler it is but also applies the rules,
    • and promotes understanding of the terminology discussed in this topic.

[edited]

In my proposal users can continue as they do now. However we have a formal definition for the other types of tiddlers that can also be formally enforced. An additional opportunity arrises with such a systematic set of definitions;

  • One could take a composite or compound tiddler can change it into a text/plain or user/wikitext and as such it is “deactivated” And acts and documentation. You could then point to another tiddler where it is text/vnd.tiddlywiki or perhaps user/compound
  • Perhaps we could also include a filter or field list that allows compound tiddlers to be dragged as one to another wiki. Eg a “streams” compound tiddler.