public ASTNode createTreeRepresentation(
        IModelElement owner,
        String notused,
        Object model,
        boolean isComposite,
        AbstractLayoutManager layout) {
      ModelASTElement contents = new ModelASTElement(ReferenceTemplate.this, (IModelElement) model);
      ASTElementNode treeRepresentation = new ASTElementNode(contents);

      treeRepresentation.addNodeObject(
          getIdentifierTemplate()
              .getAdapter(IASTProvider.class)
              .createTreeRepresentation(owner, notused, model, false, layout));

      return treeRepresentation;
    }
 public void check(ASTElementNode representation, SemanticsContext context) {
   getIdentifierTemplate()
       .getAdapter(ISemanticProvider.class)
       .check(representation.getChildNodes().get(0), context);
 }