The Underlay includes messages and packages, with a specified format for each. It also includes package servers called registries, with a specified protocol for communicating with them.
A message is an immutable RDF dataset containing a signature, provenance, and some number of assertions. Messages capture claims about the world as structured data.
A package is a collection of messages, files, and other packages. Packages are used to curate data into useful, human-described pieces. Messages are immutable, so updates and versioning happen at the package level. Packages have metadata like schemas that describe the data in their messages.
A registry is a server that hosts packages. It generally offers interfaces for finding and accessing packages, and for subscribing to their updates. A registry may handle identity management, data policies, and other tools for data sharing.