Is it possible to create a multi-layer schema in SQL Server 2008 R2? For instance so you can specify a department, and then maybe have finer levels of granularity?

CREATE SCHEMA hr;
CREATE SCHEMA hr.reportl;
CREATE SCHEMA hr.report2;


The last two statements fail.
No, that is not possible.  You can wrap those names in square brackets, but that is not recommended, since it will likely cause a lot of confusion.  For instance:

CREATE SCHEMA [hr.report];


SELECT statements against objects in the schema would then look like:

SELECT * FROM [hr.report].SomeTable;