I want to be able to create a top-level Team site. On that site, I want to add sub-sites and below those sites, 1..n sub-sites to hold project level information. On the bottom level sites, it would be very helpful to be able to store custom attributes about each project (Business Areas, Categories, Start/End Dates, etc.). The owners of each bottom level site could put data in these attributes by either custom web parts or is there some SharePoint mechanism I'm not aware of?
From the 2nd level sites, I would create custom web parts to query the information in the bottom level sites and group data based on the custom information. The top level site again would query the sites below it for their custom information.
How do I do this? Can custom attributes be tagged on a site? Or just build custom web parts and store the data in a separate SQL DB and tie the site ID to the DB records?
I've looked at Content Types and Site Columns and I don't think they fit what I'm trying to do.