docs: def get_incomplete_context_data(self, interfaces):
          '''
          Return dictionary of relation status of interfaces and any missing
          required context data. Example:
              {'amqp': {'missing_data': ['rabbitmq_password'], 'related': True},
               'zeromq-configuration': {'related': False}}
          '''
          incomplete_context_data = {}
  
          for i in six.itervalues(self.templates):
              for context in i.contexts:
                  for interface in interfaces:
                      related = False
                      if interface in context.interfaces:
                          related = context.get_related()
                          missing_data = context.missing_data
                          if missing_data:
                              incomplete_context_data[interface] = {'missing_data': missing_data}
                          if related:
                              if incomplete_context_data.get(interface):
                                  incomplete_context_data[interface].update({'related': True})
                              else:
                                  incomplete_context_data[interface] = {'related': True}
                          else:
                              incomplete_context_data[interface] = {'related': False}
          return incomplete_context_data