Buildings and Rooms

Buildings and rooms are configured in buildings.xml. Building data is in rooms.xml and rooms.csv.

There are three buildings on campus: the Faculty Building, Bestof Hall, and Sunset Towers. They are loaded into the values collection (dm:values) whose id is buildings. The forEach reads all values from the container iterator whose name is building. When the forEach is done, buildings has a value for each building. Later, iterators can be created that get these values from buildings. Building data is in buildings.xml and buildings.csv.

There are two kinds of buildings. The faculty building has offices, and the other two have classrooms. Though they have the same data structure (a building with rooms), they have different data (number of floors and rooms per floor). The Faculty Building has two floors, with ten rooms on each floor. The classroom buildings have three floors, with three rooms per floor.

Office rooms and classrooms are loaded into collections whose ids are offices and classrooms. Office room names are generated by the iterator whose id is officeNames. This iterator adds the two numbers (room number and floor number) generated by a counter iterator. Similarly, classroom names are generated by a counter iterator. In contrast to officeNames, this iterator is embedded in the container iterator that generates classrooms. The office name and classroom name iterators both generate values named room_name.