ok, just a couple of things:
1. Shouldn’t the Markdown stuff be in an extension, rather than in the concordion package? It’s adding extra dependencies to the main concordion project which seems a bit wrong.
2. It looks like ConciseExpressionParser is converting back into xml attributes, which are then handled by the DocumentParser. Wouldn’t it make more sense to factor this out so that we have some interface for generating the CommandCall tree like:
interface CommandCallTreeBuilder {
public CommandCall generateCommandCallTree(Element x, Resource r)
}
Then the ConciseExpressionParser could implement this, DocumentParser could implement this and we could have a method in ConcordionExtender to set up which approach you want to use. And this could live in the main concordion project, to be used by both markdown, excel etc.
3. withSpecificationType makes perfect sense. I’ll update this too.