The class ``ll.url.URL`` supports many common schemes and one additional special scheme named ``root`` that deserves an explanation. A ``root`` URL is supposed to be an URL that is relative to a “project” directory instead to a base URL of the document that contains the URL. Suppose we have the following document with the following base URL: >>> from ll import url >>> base = url.URL("root:company/it/about/index.html") Now, if we have the following relative URL in this document: >>> url1 = url.URL("images/logos/spam.png") the combined URL will be: >>> base/url1 URL('root:company/it/about/images/logos/spam.png') Now it we use this combined URL and interpret it relative to the base URL we get back our original relative URL: >>> (base/url1).relative(base) URL('images/logos/spam.png') Let's try a ``root`` URL now: >>> url2 = url.URL("root:images/logos/spam.png") Combining this URL with the base URL gives us the same as ``url2``: >>> base/url2 URL('root:images/logos/spam.png') But if we interpret this result relative to ``base``, we'll get: >>> (base/url2).relative(base) URL('../../../images/logos/spam.png') I.e. this gives us a relative URL that references ``url2`` from ``base`` when both URLs are relative to the same root directory.