Everyone, thanks a lot for all your comments and feedback.
@Lars, yes both things are not exclusive, but modeling small archetypes makes template ids not needed at the query level.
I agree with your point of the difficulty of keeping track of templates in queries, since at some point we might want to share queries between different implementations of the same tools or even different vendors.
@Heather, that way of modeling is very nice since it works on v1.0.2, just to rephrase: you propose to use COMPOSITION.name to be DV_CODED_TEXT on instances defined by the COMPOSITION.encounter archetype. On this case, there is not need of a filter by template id since it can be done directly by the codeString.
I mentioned DV_CODED_TEXT on purpose here because I don’t think searching by free text names is a robust solution, mostly considering internationalization of systems.
@Ian +1.
For all, we are discussing about a composition classification attribute to be added to the RM, something that is already on CDA and FHIR (classCode) but we don’t have, it is used in XDS environments, and can be used for querying. Is a concept that can group many templates. DIPS implementation has something like this in software.
@Diego I think we need to look into the LOINC direction for “composition type” codes, and hopefully try to find SNOMED mappings. On the other hand, looking at XDS they say these codes should be coordinated by the affinity domain members. This is orthogonal to my question, but might also help to solve queries.
@Silje I agree with the governance problem of creating a lot of archetypes, but I’m not sure if that can make querying more unpredictable, since querying would be more specific since there are more specific archetypes for each context.
Thinking about governance horrorfest, maybe the problem is not really having a lot of levels of archetype inheritance/specialization, but that current modeling tools are not prepared to handle that workflow and do things automatically to check consistency, auto update dependencies, release full updated specialization hierarchies when one of the most generic archetypes changes, etc.
On AQL I couldn’t find one example that actually uses a template id as a filter or criteria. Not sure if this is even supported or if it’s just an scenario that wasn’t considered when creating the specs. Maybe AQL implementers can give some light on this area.
@Seref, +1. Please check last paragraph ^, I think we might be missing the use of template ids on AQL.
@Pekka, I think that goes in the lines of having that “classCode” attribute added to the RM (mentioned on @Ian), or modeling it in COMPOSITION.context.other_context (might be done by COMPOSITION.encounter archetype specialization or be resolved to an ITEM_STRUCTURE archetype on the template), or having COMPOSTION.name<DV_CODED_TEXT> (mentioned on @Heather).
@Thomas, I’m far for ADL2 support yet 
Thanks all, this is why I love this community <3