Penrose comes with some built-in features including ACL, cache, proxy, etc. However, to use these features they have to be configured in XML files (directory.xml, modules.xml, etc.). If certain features are not available in Penrose (e.g. Web services, stored procedures), Penrose provides some API to implement custom extension (custom entry, custom modules, etc.), then Penrose can be configured to use the extension.