I'm creating a directive which will restrict HTML access if some condition are not met. Unfortunately issue arises when inner directives get called before inner HTML is changed and compiled.

Is it possible to stop nested directive execution from any outer directive?

Example (see console): <http://jsfiddle.net/xaQzb/14/>

HTML:

```
<div ng-app="testApp">
  <outer-element>
    <inner-element>
    </inner-element>
  </outer-element>
</div>

```

App

```
angular.module('testApp', []);

var app = angular.module('testApp');

app
  .directive('outerElement', ['$compile', function($compile) {

    function linker(scope, element) {
      element[0].innerHTML = 'Replaced HTML and should not execute anything inside';
      $compile(element.contents())(scope);
    }

    return {
      restrict: 'E',
      scope: false,
      link: linker
    }
  }]);

app
  .directive('innerElement', function() {

    function linker(scope, element) {
      console.log('Directive has been called');
    }

    return {
      restrict: 'E',
      scope: false,
      link: linker
    }
  });

```