100% agreement. The spec should be precise. My point is that given a choice between changing the spec and changing the implementation, I lean toward the former. In fact, I think even if the implementation is changed, the spec will need additional wording to make clear that the parse is identical to if the link reference definition had been removed from the original document. One (imho reasonable) way to interpret the existing spec language is that the link reference definition does not correspond to a node in the resulting AST.