Right now I'm working on a project where a number of tiddlers are just little chunks of key-value data. I'm putting them in JSONTiddlers, because that seems to be what tiddlers turn into naturally when I start setting data on their indices.
I just noticed that there's a nice thing available for tiddlers which are collections of *fields* as opposed to using indices, and that's:
[field:foo<bar>] which gives you all the tiddlers whose foo field is equal to the value of the variable "bar". There's not a simple equivalent with indices as far as I know, you have to cobble together a filter with [filter[]] or the new :filter prefix.
Obviously with fields you're more limited in the names of keys -- keys can be any string in data tiddlers, but only lowercase, "-", "_", and "." for fields. And obviously there are reserved names for fields, like "text", that are not reserved for data tiddlers.
I *think* I made the right choice going with a data tiddler for my little blobs of data, but that nice [field[]] filter operator made me wonder.
Just wanted to throw the question open to the community: If you've used tiddlers as blobs of key-value data, and made the choice between using the fields in a normal tiddler, and using a data tiddler, what considerations factored into your decision? Do you have any rules of thumb?
I'm not asking because of a particular decision I need to make, I'm more curious about the general question.
(Oh, secondarily: any reason to choose one or the other of Dictionary vs JSON? They seem to do pretty much the same job to me.)
Thanks!