Currently CommonMark doesn’t allow reference link definitions without a target:
[foo]:
[foo]
In this respect it is in line with most implementations, though a few treat this as a link with an empty URL.
This seems a waste of good syntx. What if an empty reference definition were given a special meaning as an anchor, as illustrated by the following (which would have been really handy in writing the spec document):
[link text]:
The link text cannot contain links, though it may
contain images. Etc.
... later ...
See the discussion of [link text], above.
where this gets converted to:
<a id="link-text"></a>
<p>The link text cannot contain links, though it may
contain images. Etc.</p>
... later ...
<p>See the discussion of <a href="#link-text">link text</a>, above.</p>