``` [basic _link_][a_b_] [a_b_]: url .
``` ``` ![basic _image_][a_b_] [a_b_]: url .[a and b]: url
``` No case normalization is done on reference definitions: ``` [Link][] [link]: /url . ``` Attributes on reference definitions get transferred to the link: ``` {title=foo} [ref]: /url [ref][] . ``` Attributes on the link override those on references: ``` {title=foo} [ref]: /url [ref][]{title=bar} . ``` ``` [link _and_ link][] [link _and_ link]: url . ``` ```  .[unclosed](hello a b
``` Note that soft breaks are ignored, so long URLs can be split over multiple lines: ``` [closed](hello *a b*) . ``` Here the strong takes precedence over the link because it starts first: ``` *[closed](hello*) .[closed](hello)
``` Avoid this with a backslash escape: ``` *[closed](hello\*) . ``` Link in link? ``` [[foo](bar)](baz) . ``` Link in image? ``` ](img) .http://example.com/foo me@example.com
``` Openers inside `[..](` or `[..][` or `[..]{` can't match outside them, even if the construction doesn't turn out to be a link or span or image. ``` [x_y](x_y) . ``` ``` [x_y](x_ .[x_y](x_
``` ``` [x_y]{.bar_} .```