With the following extract, how can I x-shift the second edge (edge2) between n1 and n2 so that it doesn't overlap with the first? Also, is there a way to add text to each of the edges so that they don't overlap?

![enter image description here](https://i.stack.imgur.com/2ujEw.png)

```
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{chains}
\usetikzlibrary{arrows}

\begin{document}
\begin{tikzpicture}
[node distance=0mm, text height=1.5ex, text depth=.25ex,
attribute/.style={rectangle,minimum size=8mm,very thin,draw=black!50,font=\ttfamily},
link/.style={thin, to path={-- ++(0,8mm) -| (\tikztotarget)}, >= triangle 45, shorten >= 0pt}]
\node (n1) [attribute] {\small NODE1};
\node (n2) [attribute, right=of n1] {\small NODE2};
\path (n1) edge [->, link] (n2);
\path (n1) edge [->, link] (n2); %this edge to x-shift
\end{tikzpicture}
\end{document}

```