lsblk reads information from udev, and if unsuccessful, then from libblkid, if --sysroot specified, then from a file.
It would be nice for some use cases (coreos/fedora-coreos-config#2181) to have a command line option to force lsblk to use non-default order how to get properties.