diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml
index 31a351dd..58518216 100644
--- a/doc/dbus-specification.xml
+++ b/doc/dbus-specification.xml
@@ -4245,6 +4245,24 @@
It does not matter which object path a GetMachineId is sent to. The
reference implementation handles this method automatically.
+
+ On Unix, implementations should try to read the machine ID from
+ /var/lib/dbus/machine-id and
+ /etc/machine-id. The latter is
+
+ defined by systemd, but systems not using systemd may provide
+ an equivalent file.
+ If both exist, they are expected to have the same contents, and if they
+ differ, the spec does not define which takes precedence (the reference
+ implementation prefers /var/lib/dbus/machine-id,
+ but sd-bus does not).
+
+
+ On Windows, the hardware profile GUID is used as the machine ID,
+ with the punctuation removed. This can be obtained with the
+
+ GetCurrentHwProfile function.
+
The UUID is intended to be per-instance-of-the-operating-system, so may represent
a virtual machine running on a hypervisor, rather than a physical machine.