Now that we've got the basis of Project, it's time we discuss aggregation expressions. We've discussed them briefly, and now it's time to examine them more thoroughly. Expressions are the core units of the aggregation framework. If an aggregation pipeline is a conveyor belt that we can place different stages upon to build our desired result, expressions are the tools in each stage that actually perform these transformations. Expressions are the functions of the aggregation framework. Just like functions, they take an argument and return a result. Here, we have identical add functions in Python, the C family of languages, and the MongoDB Aggregation framework. Executing any of them would produce identical results. Here are some expressions available to us. We can use Boolean, set, comparison, variable, literal, arithmetic, string, text search, array, data type, conditional, date, and accumulator expressions. As we can see, there are a lot of expressions available to us. While the names can be very descriptive we're going to need details on how to use them. Additionally, some expressions can only be used in specific stages. To get that information we invite you to bookmark the aggregation pipeline quick reference page, the link is below this video. Now I'd really like to round to the nearest integer. But I can see that currently, there's no expression named round. I can round to the nearest integer by adding 0.5 to a value and then, the result. And I can see that there are both the add and the floor expression. Just like functions, expressions can be composed together to perform more complex calculations. We've done this already when calculating our weight on various bodies in the solar system. So, let's make our own round expression. We won't actually be able to reference it with $round but it will be functionally identical. Let's look at this in action by rounding the radius value in our documents to the nearest integer. We reference the information we want from a document by prepending a dollar sign, again, this is called the field path expression. Then we compose two expressions to produce the desired results. As a reminder, we can also use the system variable $$Current to reference the value we want as well. We now discussed expressions fairly in depth, some key things to remember about expressions. Expressions are equivalent to functions. Specific syntax and argument ordering within an Expression is dependent upon the Expression. The syntax is predictable but Expressions vary on whether they require arguments in an array or not. Usually if an Expression takes two arguments, they're given as an array. And some Expressions will produce different results based on the ordering of arguments. Always look up Expressions from MongoDB documentation to ensure you understand their use. Lastly, Expressions are composable. Often times, we may find it necessary to combine two or more expressions. Good luck.