A X=NO
would mean that this version of VIM was build without X support.
Other packages can depend on vim being compiled with or without X now. Lets say we have a VIM-ADDON package that needs vim in X mode. It would have the following dependency:
R DEPEND VIM X=YES
This means that VIM-ADDON needs VIM to be build with X support in order to function. uPM can evaluate the situation and can rebuild VIM now with the right attributes so that VIM-ADDON will work properly.
Default values for Attributes can be set in /etc/upm/defaults. A setting of X=NO in there could have caused the building of VIM without X support.
The version number is simply another attribute of a package and it can be checked the same way. Lets say a package depends on version 7 or greater of VIM and on VIM having X support
iR DEPEND VIM version>7 & X=YES
I GCC_VERSION VERSION
which will cause a record
A GCC_VERSION 3.2
to be included in VIM when it is build using GCC 3.2. This can be used to track all packages build with special tools and require an upgrade of all packages build by certain tools. uPM can insure that all binaries on the system were build with the current installed set of tools.