Preventing Overlapping Data in PostgreSQL - What Goes Into an Exclusion Constraint

How can you prevent overlapping date ranges? Exclusion constraints do it at the database layer