|BML Block Types
||[Jul. 15th, 2003|01:22 am]
Given that Plogs.net is working on allowing users who purchase the option to have access to change the site scheme (i.e. actually edit it), I've been working on creating a scheme editor utility. It's coming along well, but I've run into an issue about BML block types. They have lots of little letters, and I can figure out what a few mean, but the comments in BML.pm are few enough that I can't figure out what a few of them do.|
Here's my list, and what I've discovered about each. Feedback would be appreciated, so I know what options to give users and can write the appropriate documentation. Thanks!
D - Data block, %%data%%
This seems to be the default. If nothing else is specified, it defaults to doing this. Everything passed to the tag is spat out as %%data%%.
F - Full, requires subdeclarations (useful for PAGE)
This element can have subelements defined. (Well, it seems like it's required to have subelements defined.) This is the PAGE variable, I haven't really found any other use for it. Pipe Blocks work fine for me and are less of a pain to actually use.
P - Pipe, %%data1%%, %%data2%%, etc
This sort of block lets you pass multiple parameters separated by the pipe ("|") character. Fairly self-explanatory, and pretty useful.
R - Flag wants variable interpolation, but no expansion
I have no idea. This seems like it'd allow %%foo%% to be interpolated, but what's expansion? I don't understand the BML difference. (Is expansion the recursion of other BML tags?)
S - No variables or BML tags
Static. It gets returned as is without any parsing.
p - Pre-parsing of elements, used if you want _CODE but not AllowCode
s - Static? Maybe?