I think the problem with this markup is that you only have an "open"-tag and can't nest them.
You can, I just didn't show any examples of that. What I want to do is have {xx some text} produce a SPAN, and {xx Some text } Produce a DIV, either or both of which can be nested if necessary (though it should almost never be). The shortcut syntax {xx} just means "apply the class or ID to whatever the next thing you encounter is", which may be a single word of text, or a table, or a cell, or a list, or a header....
How would you combine it, for example, to have a small label below the floating-right image?
Put 'em in a DIV:
{right [[image:baldeagle.jpg]]<br> Caption }
We'll have to do something about <br>, and we also need a way to specify table captions and headers (you could then put the image in a table with a caption if you preferred).
Make it look wiki, I think this is similar to the way Jan Hidders proposed:
[[image:spottedowl.jpg|Spotted owl]] >>
Right now that sets the ALT text.
wikipedia-l@lists.wikimedia.org