The restriction of webspaces to a url in the site table is flawed. There are many times when you would want to place a specific url_id of a site, but not necessarily the whole site_id in a webspace.
For example, geocities.com has millions of pages. I'd like to place a single page of geocites in a webspace along with other pages. The current table structure of the spaces table only accounts for two columns, space_id, and site_id. Please think about implementing this.
