Use Boost.Exception
Viewport handling on elements referenced by "use" or "image"