What is the definition of a commutative diagram? Reading in ACC (the joy of cats) I was quite surprised to meet a real
definition of diagram. This word had been used exactly $27$ times
allready (just believe me) and the question 'what is it?' had not reached my thinking
whatsoever. Okay, good to have a definition (11.1(1) see under),
but it triggered me to expect a definition of commutative diagram
as well. Alas, it was not there. In my intuition I think of a diagram
having a poset as scheme, but I don't trust that intuition
enough to take this for granted. So I am asking you here:

What is the definition of a commutative diagram?

Thanks in advance
11.1 (1) A diagram in a category $\mathcal{A}$ is a functor $D:\mathcal{I}\rightarrow\mathcal{A}$
with codomain $\mathcal{A}$. The domain, $\mathcal{I}$, is called
the scheme of the diagram.
 A: Let $\Gamma=(V,E,s,t)$ be a directed graph ($V$ = vertices, $E$ = edges, $s$ = source, $t$ = target). Let $\mathcal{C}$ be a category. A diagram of shape $\Gamma$ in $\mathcal{C}$ is a family of objects $X(v) \in \mathcal{C}$ for every vertex $v \in V$ and morphisms $X(e)$ in $\mathcal{C}$ for every edge $e \in E$ such that $s(X(e))=X(s(e))$ and $t(X(e))=X(t(e))$ for all $e \in E$. Thus, every edge $e : v \to w$ is mapped to a morphism $X(e) : X(v) \to X(w)$.
For a path $\gamma$ in $\Gamma$ we define a morphism $X(\gamma)$ in $\mathcal{C}$ by induction: If $\gamma$ is the empty path at a vertex $v$, let $X(\gamma):=\mathrm{id}_{X(v)}$. If $\gamma = \beta \circ e$ for a shorter path $\beta$ and an edge $e$, define $X(\gamma) := X(\beta) \circ X(e)$.
The diagram $X$ is called commutative if for all vertices $v,w \in V$ and all two paths $\gamma,\gamma'$ in $\Gamma$ from $v$ to $w$ we have $X(\gamma)=X(\gamma')$.
Convince yourself that this coincides with the usual definition for simple examples such as
$$\Gamma = \begin{array}{c} \bullet & \rightarrow & \bullet \\ \downarrow && \downarrow \\ \bullet & \rightarrow & \bullet  \end{array}$$
There is a close connection between diagrams and functors. If $\mathsf{Path}(\Gamma)$ denotes the path category, then functors $\mathsf{Path}(\Gamma) \to \mathcal{C}$ correspond to diagrams of shape $\Gamma$ in $\mathcal{C}$. These in turn correspond to homomorphisms of directed graphs $\Gamma \to U(\mathcal{C})$, where $U(-)$ is the forgetful functor from categories to directed graphs.
If one even regards arbitrary functors (with small domain category) as diagrams, then we may use the same definition of commutativity as above: Every two chains of morphisms between two given objects are mapped to the same morphism.
Sometimes one only demands the commutativity condition for certain paths. For example, when dealing with sheaves or simplicial sets, usually a diagram of the shape
$$\begin{array}{c} \bullet & \rightrightarrows & \bullet \\ \downarrow && \downarrow \\ \bullet & \rightrightarrows & \bullet  \end{array}$$
is called commutative if the two squares which consist of the two upper resp. lower horizontal morphisms are commutative. 
PS: I have just found that these definitions can also be found in Grothendieck's Tohoku paper. 
