I am looking for a CMS that allows an instance of a template object to inherit from the original/master, but for the instance to be able to optionally be "opened up" and additions and removals be performed on that instance, without removing the inheritance from the original/master in the instance for future changes to areas outside of the added and removed areas.
Default instance of template object:
[componentTemplate templateId="article"]
<div class="article">
[contentField templateId="articleContent"]
<!--End article--></div>
[/componentTemplate]
output:
<div class="article">
value of articleContent field as entered by user
<!--End article--></div>
Then, in the below example, this is an instance of the template, not editing the original. The CMS should allow this instance to inherit from the original, but for this instance to be able to be expanded, and additional markup added as a "delta" in the form of suppression blocks and add blocks like so:
[componentTemplate templateId="article"]
<div class="[templateSuppress]article[/templateSuppress][templateAdd]other_class[/templateAdd]" [templateAdd]id="myId"[/templateAdd]>
[contentField templateId="articleContent"]
<!--End article--></div>
[/componentTemplate]
output:
<div class="other_class" id="myID">
value of articleContent field as entered by user
<!--End article--></div>
Does anyone know of a CMS that works as this psuedocode example? Bonus points if it is designed for being integrated into Visual Studio for developer IDE and Team Foundation Server for deployment in addition to any browser-based GUI provided for non-developers. I apologize if this is not the right place for this question, please help me move it to a more appropriate place if it isn't.