Defining capabilities and contracts
Windows 10 provides UWP apps the ability to communicate with any other app on the computer, without prior knowledge of what those apps might be, through a concept called contracts. A contract is an operating system level interface that is implemented by consumers or providers of information. The operating system then keeps track of which apps support which contracts, and coordinates the information between apps using those contracts.
Windows 10, as part of its focus on maintaining a trust level in the apps it runs, expects UWP apps to communicate the capabilities they need. A capability is a permission or access right that a UWP app requires for it to run correctly, for example, an app that requires Internet access or local network permissions. There is a range of capabilities that the operating system can provide to UWP apps. An app that doesn't request capabilities from the operating system will be provided minimum level access, which means that...