13.2. Design

Resource identifiers are hierarchical, using notation similar to a Posix filesystem: e.g. “/foo/bar.py” to represent a text file containing Python source code. Because resources are registered with a central repository, this hierarchical “filesystem” should be used to avoid name clashes. For example, every resource used in a shared library “foo” might receive a common prefix “/foo” to avoid clashes with other libraries. Note that the identifier need not follow the layout of a physical filesystem or incorporate the name of the original resource file - it is simply a “handle” that will be used by code that needs to access the resource. Similarly, file extensions have no meaning to the resource system, but are encouraged to improve code clarity.