anchor.diff:  
     @override
     visitVariableDeclaration(VariableDeclaration node) {
  -    // level variable
       var isLocal = _enclosingVName != _enclosingClassVName &&
           _enclosingVName != _enclosingFileVName;
   
       // variable
  -    var variableVName = addNodeAndFacts(schema.VARIABLE_KIND,
  -        element: node.element,
  +    _handleVariableDeclaration(node.element, node.name,
           subKind: isLocal ? schema.LOCAL_SUBKIND : schema.FIELD_SUBKIND,
  -        completeFact: schema.DEFINITION);
  -
  -    // anchor
  -    addAnchorEdgesContainingEdge(
  -        syntacticEntity: node.name,
  -        edges: [
  -          schema.DEFINES_BINDING_EDGE,
  -        ],
  -        target: variableVName,
  -        enclosingTarget: _enclosingVName);
  -
  -    // type
  -    addEdge(
  -        variableVName,
  -        schema.TYPED_EDGE,
  -        _vNameFromType(
  -            resolutionMap.elementDeclaredByVariableDeclaration(node).type));
  +        type: resolutionMap.elementDeclaredByVariableDeclaration(node).type);
   
       // visit children
       _safelyVisit(node.initializer);
  
positive.code: 
      if (prefixIdentifier != null) {
        // variable
        var variableVName = addNodeAndFacts(schema.VARIABLE_KIND,
            element: prefixIdentifier.staticElement,
            completeFact: schema.DEFINITION);
  
        // anchor
        addAnchorEdgesContainingEdge(
            syntacticEntity: prefixIdentifier,
            edges: [schema.DEFINES_BINDING_EDGE],
            target: variableVName,
            enclosingTarget: _enclosingVName);
      }
  
      // visit children
  
negative.code: 
    @override
    visitDeclaredIdentifier(DeclaredIdentifier node) {
      _handleVariableDeclaration(node.element, node.identifier,
          subKind: schema.LOCAL_SUBKIND,
          type: resolutionMap.elementDeclaredByDeclaredIdentifier(node).type);
  
      // no children
    }
  