Glossary

This is a glossary of terms used throughout the documentation of our modules.

score.auth

actor
An actor is a person, cronjob or worker that is able to perform an operation. It can be a member of several groups. It inherits the permissions from its groups.
group
A group is a container for several permissions. It can be added to different actors.
permission
An Enum allowing actors of a group to perform an operation. Its job is not to implement or execute this operation, but to just explain it by its definition as concise as possible. A suitable definition for a permission could be open the door or write a blog.
rule
A function accepting an object and an actor returning whether the actor is allowed to perform the operation in context of the object.
operation
A string representing an activity, task or job, e.g. comment, edit or delete.
authentication chain
When the configured module is requested to determine the currently active user, it will need to forward the request to registered Authenticators. Each Authenticator will try to figure out the current user in a certain way and ask the next Authenticator if it fails to do so, until either one of the Authenticators succeeds or there are no more Authenticators to invoke.

score.asyncio

loop token

A token granted by the configured score.asyncio module that you must keep as long as you are using the configured asyncio.AbstractEventLoop.

See Starting the Loop for details.

score.cli

shell command

A click command that was registered for use with score.cli. The conf part in the following invocation is the shell command:

$ score conf list

See CLI Command Aggregation for details.

score.ctx

context object
An object that has the same lifetime as any interaction with the application. Have a look at the documentation of score.ctx for a more elaborate definition.
context member
A dynamically created member of a Context class. Context members are registered by calling score.ctx.ConfiguredCtxModule.register(). The introduction to score.ctx provides some examples.

score.es

top-most es class

The first class within score.db’s class hierarchy — as defined by the classes’ __score_db__[‘base’] — that has a class member called __score_es__.

Example: Given the class hierarchy in the next few lines, the class X would be considered the top-most es class in Foo’s class hierarchy.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
class A(Base):
    pass

class B(A):
    pass

class X(B):
    __score_es__ = {
        'name': {'type': 'string'}
    }
    name = Column(String)

class Foo(X)
    __score_es__ = {
        'user_id': {'type': 'integer'}
    }
    user_id = Column(Integer, ForeignKey('_user.id'))

score.http

request router
The request router (also referred to as the http router) is the part of an HTTP application that decides which route is responsible for handling a particular HTP request.
route
A function designed to handle a specific URL. The URL may contain variables, as described in the narrative documentation of the router.
preroute
A function that will be called before the actual route to a request is invoked. Note that the preroute will only be invoked, if there actually is a route. It will not be invoked for requests, where none of the configured routes mathed (i.e. 404 responses).

score.init

confdict
The input value to an init function. A dict mapping configuration keys to values. The Introduction can give you a good example on its meaning and usage.
configuration helper
A class that can be used to define part of a module configuration in python code. The narrative documentation on the SCORE initialisation process contains a section describing the use of configuration helpers in detail.

score.kvcache

cache container
A cache container acts as a wrapper for different key-value pairs sharing some configuration and a registered callback function.
cache value generator
A callback function that will be invoked by a cache container using a key as argument if a requested value was not found in the cache backend.

score.tpl

template
A text file that needs to be pre-processed before it can be put to its intended use. This includes template languages like Jinja2 or Mako, as well as preprocessors for other formats like sass or coffescript.
template engine
A callback function, that will construct score.tpl.Renderer instances. See score.tpl.ConfiguredTplModule.engines for a more detailed explanation.
file type
A registered mime type with additional properties provided by other modules. See File Types for an in-depth explanation.

score.pyfilesystem

pyfilesystem scope

The scope of the created file system object. This is mostly relevant for file system implementations that need to perform some operations on startup/teardown. If a memory file system’s scope is limited to the current score.ctx.Context, for example, its contents are only available within that context.

See Filesystem scope for details.

score.varnish

purge request
An HTTP request to a Varnish server with the HTTP verb PURGE and the intent to invalidate its cache for certain resources. This approach allows you to cache objects for a long time, if you invalidate the cache each time they are modified.
purge type
There numerous cache invalidation strategies in the Varnish server. If you have configured your Varnish server to do so, you may specify the type of purge to perform in your purge requests.

score.webassets

asset

A resource that is a mostly static part of a web application. Examples include, but are not limited to:

  • cascading style sheets
  • javascript files
  • icons and other images that are part of the layout (i.e. those that were integrated by designers, not those uploaded by users)
asset module
The name of the module providing an asset. This is part of an asset’s unique identifier: Various functions in this module need a combination of a module name and a path to identify an asset.
asset path
A relative file path to an asset. This can be an arbitrary string, but usually looks very much like a path on a file system, since assets are usually stored as files.
asset hash

A random string that changes whenever the contents of an asset changes. This value is useful for implementing client-side caching. Example URL with appended asset hash: /css/reset.css?version=ca29f34cbfd2

The same concept applies for bundles, as well.

See the narrative documentation of webasset versioning for an in-depth explanation.

asset bundle
A file containing the content of multiple assets. This might be as simple as a string concatenation of css files, or as complex as an externally built browserify javascript bundle.