<?xml version="1.0"?>
<tagneticconfig>
  <compilation>
    <source>testpages/overlays</source>
    <destination>testpagesout/overlays</destination>
    <filefilter type="regexp">Target.html</filefilter>
    <copynonmatchingfiles>false</copynonmatchingfiles>
    <fileoverlays>
      <fileoverlay position="before">
        <file>Target.html$</file>
        <overlay>testpages/overlays/FileOverlayTop.html</overlay>
      </fileoverlay>
      <fileoverlay position="after">
        <file>Target.html$</file>
        <overlay>testpages/overlays/FileOverlayBottom.html</overlay>
      </fileoverlay>
    </fileoverlays>
  </compilation>
  <elementsyntax classname="org.tagnetic.core.parser.tagmatcher.SimpleTagMatcher">
    <param name="prefix">[[</param>
    <param name="suffix">]]</param>
    <param name="attributeseparator">&amp;</param>
    <param name="namevalueseparator">\</param>
  </elementsyntax>
  <tags scriptcontextname="js" scriptcontext="org.tagnetic.core.scriptcontext.implementer.javascript.JavaScriptContext">
    <tag name="body" classname="org.tagnetic.core.tags.overlay.FirstChild">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/BodyHeaderOverlay.html</attribute>
    </tag>
    <tag name="body" classname="org.tagnetic.core.tags.overlay.LastChild">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/BodyFooterOverlay.html</attribute>
    </tag>
    <tag name="*" classname="org.tagnetic.core.tags.overlay.Before">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/BeforeOverlay.html</attribute>
      <attribute name="_attribute">class</attribute>
      <attribute name="_condition">contain</attribute>
      <attribute name="_value">\bnav\b</attribute>
    </tag>
    <tag name="*" classname="org.tagnetic.core.tags.overlay.After">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/AfterOverlay.html</attribute>
      <attribute name="_attribute">class</attribute>
      <attribute name="_condition">contain</attribute>
      <attribute name="_value">\bnav\b</attribute>
    </tag>
    <tag name="blink" classname="org.tagnetic.core.tags.RemoveTag">
    </tag>
  </tags>
  
  <tags nsprefix="test" scriptcontextname="js" scriptcontext="org.tagnetic.core.scriptcontext.implementer.javascript.JavaScriptContext">
    <tag name="toptitle" classname="org.tagnetic.core.tags.define.DefineInclude">
      <attribute name="definetype">element</attribute>
    </tag>
    <tag name="basicsquare" classname="org.tagnetic.core.tags.define.DefineInclude">
      <attribute name="path" type="path">template/BasicSquare.htmi</attribute>
      <attribute name="newscope">true</attribute>
    </tag>
    <tag name="squarecontent" classname="org.tagnetic.core.tags.overlay.FirstChild">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/FirstChildOverlay.html</attribute>
      <attribute name="_attribute">id</attribute>
      <attribute name="_condition">match</attribute>
      <attribute name="_value">firstsquare</attribute>
    </tag>
    <tag name="squarecontent" classname="org.tagnetic.core.tags.overlay.LastChild">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/LastChildOverlay.html</attribute>
      <attribute name="_attribute">id</attribute>
      <attribute name="_condition">match</attribute>
      <attribute name="_value">firstsquare</attribute>
    </tag>
    
    <tag name="squarecontent" classname="org.tagnetic.core.tags.define.DefineInclude">
      <attribute name="definetype">element</attribute>
    </tag>
    
    <tag name="squarecontent" classname="org.tagnetic.core.tags.overlay.FirstChild">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/FirstChildOverlay.html</attribute>
      <attribute name="_attribute">id</attribute>
      <attribute name="_condition">match</attribute>
      <attribute name="_value">firstsquare</attribute>
    </tag>
    
    <!-- This overlay will not get its content set as part of the definition for the
         squarecontent define, since DefineInclude grabs its body in the onEndTag, and
         commits that as the value of squarecontent. Since the tag handler below will
         execute onEndTag() *after* DefineInclude's, it will not get into the variable definition. -->
    <tag name="squarecontent" classname="org.tagnetic.core.tags.overlay.LastChild">
      <attribute name="_filematch">Target.html$</attribute>
      <attribute name="_overlayfile">testpages/overlays/LastChildOverlay.html</attribute>
      <attribute name="_attribute">id</attribute>
      <attribute name="_condition">match</attribute>
      <attribute name="_value">firstsquare</attribute>
    </tag>
  </tags>
</tagneticconfig>
