diff --git a/index.bs b/index.bs
index 1f58729..f2af388 100644
--- a/index.bs
+++ b/index.bs
@@ -418,9 +418,12 @@ created, its [=database/version=] is 0 (zero).
+A [=database=] has at most one associated upgrade transaction,
+which is either null or an [=/upgrade transaction=], and is initially null.
+
@@ -484,7 +487,7 @@ connection=] with the [=/connection=] and with the |forced flag| set.
A [=/connection=] has an object store set, which is
initialized to the set of [=/object stores=] in the associated
[=database=] when the [=/connection=] is created. The contents of the
-set will remain constant except when an [=upgrade transaction=] is
+set will remain constant except when an [=/upgrade transaction=] is
running.
A [=/connection=]'s [=get the parent=] algorithm returns
@@ -508,7 +511,7 @@ storing data in a [=database=].
Each database has a set of [=/object stores=]. The set of [=/object
-stores=] can be changed, but only using an [=upgrade transaction=],
+stores=] can be changed, but only using an [=/upgrade transaction=],
i.e. in response to an [=upgradeneeded=] event. When a
new database is created it doesn't contain any [=/object stores=].
@@ -562,12 +565,12 @@ An [=/object store handle=] has an index set, which is
initialized to the set of [=/indexes=] that reference the associated
[=object-store-handle/object store=] when the [=/object store handle=]
is created. The contents of the set will remain constant except when
-an [=upgrade transaction=] is running.
+an [=/upgrade transaction=] is running.
An [=/object store handle=] has a name, which is
initialized to the [=object-store/name=] of the associated
[=object-store-handle/object store=] when the [=/object store handle=]
-is created. The name will remain constant except when an [=upgrade
+is created. The name will remain constant except when an [=/upgrade
transaction=] is running.
@@ -916,7 +919,7 @@ particular [=/index=] within a [=/transaction=].
An [=index handle=] has a name, which is initialized to the
[=index/name=] of the associated [=index-handle/index=] when the
[=index handle=] is created. The name will remain constant except when
-an [=upgrade transaction=] is running.
+an [=/upgrade transaction=] is running.
@@ -1196,7 +1199,7 @@ with [=transaction/cleanup event loop=] matching the current
An upgrade transaction is a [=/transaction=] with [=transaction/mode=]
{{"versionchange"}}.
-An [=upgrade transaction=] is automatically created when running the
+An [=/upgrade transaction=] is automatically created when running the
steps to [=run an upgrade transaction=] after a [=/connection=]
is opened to a [=/database=], if a [=database/version=] greater than
the current [=database/version=] is specified. This [=/transaction=]
@@ -1204,26 +1207,26 @@ will be active inside the [=upgradeneeded=] event
handler.