The problem is assuming parent / child:
- Parent - this is only the parent element of the Child , but not the parent.
- sibling scopes, $rootScope ($ id: 002) .
??
- - this commit,
Isolate scope is now available only to the isolate directive that requested it and its template. - , ( ) - .
- , child , .
- $emit, $broadcast sibling.

:
: http://plnkr.co/edit/EfKJthkQLitWnF2srykM?p=preview
, , .
.directive('parent', function ($timeout) {
return {
template:'<child name="Jimmy"></child>',
?
.
.directive('parent', function ($timeout) {
return {
controller: function(){
this.hungry = function(message){
}
}
:
.directive('child', function ($timeout) {
return {
require: "^parent",
link: function (scope, element, attrs, parentCtrl) {
parentCtrl.hungry("I'm hungry!")