Advertising sustains the DA. Ads are hidden for members. Join today

Terminology

Last updated on
9 August 2021

This page has not yet been reviewed by VisualN maintainer(s) and added to the menu.

This documentation needs work. See "Help improve this page" in the sidebar.

Drawing - refers to a single visualization created using VisualN module toolkit.

Drawer - in most cases a Base Drawer is considered though may also refer to a Subdrawer or both (which should be visible from context), e.g. in phrases like "develop a drawer" a php plugin is supposed which is a Base Drawer, whereas in "select drawer in visualization style configuration form" refers to both, Base Drawers and Subdrawers equal.

Base Drawer - typically is a drupal plugin with a js script (though teoretically may be only a plugin in case of server-side drawers). Base drawers are the central part of the system, everything else is build around them and on top of them.

User-defined drawer (subdrawer) - generally speaking subdrawer is a wrapper around a base drawer with default configuration and possibly a set of modifiers. A wrapper itself can be a Native wrapper for the drawer (which is the right way to create subdrawers) or a Default wrapper (which tries to replace Native wrapper in absence of the latter one, and can be buggy in some situations, generally because of some drawer modifiers).

WSS-drawers (drawers with setup select) - drawers that use Drawer setups for their configuration.

Visualization style - a configuration entity which stores a reference to the drawer (be it Base or Subdrawer) and default configuration for it.

Drawer setup - a configuration entity used to store configuration that can be used by drawers. Drawer setups don't depend on other entities and serve only reasons of usability. A drawer may manage all its configuration by itself via its configuration form but in some cases it may be more reasonable to provide just a reference to an external Drawer setup configuration entity.

Setup baker - a plugin that provides UI to input and generate configurations for Drawer setups. When creating a drawer setup user selects a setup baker from select box. In VisualN core there is a generic baker used to input configuration in json format into a single textarea. Developers can provide custom bakers that fit best for specific configuration types. For example, a baker that is intended to be used for setup generation for a specific gallery or a chart may provide a form with a specified set of fields that allow non-technical users to create a setup. In some case setup bakers allow to provide multiple UIs to create configuration for one drawer.

Wrapper - a plugin used by sudrawers to wrap base drawer plugin and provide an opportunity for drawer modifiers to change base drawer plugin methods behaviour. Wrappers implement the same interface that drawers do and actually replace base drawers when used as subdrawers. The way it works is as follows: visualization style exposes drawer to the system to use for creating drawings, but in case of subdrawers it exposes a wrapper instead, which in its turn delegates all calls to the original base drawer. This gives a place for drawer modifiers to act on methods behaviour, namely a wrapper before (and after) calling the original base drawer methods calls modifiers registered for the given method and allows them to change input data for the method or method call result.

Native wrapper - a plugin that extends the class of the base drawer it is inteded to be used with. Basically this is the only right way to create wrappers. But not all base drawers provide native wrappers, in which case a default wrapper is used. Since default wrapper isn't technically a supercalss for the base drawer, it can't override base drawer methods in all situation, and can work incorrectly with some drawers and modifiers (which don't take this point into consideration).

Drawer modifier - a plugin used by subdrawers to modify base drawer method calls behaviour via modifying input and output of these methods.

Adapter - a plugin with a js script used to transform input data of a given format (CSV, JSON etc.) into a generic javascript object that can be used by mappers and drawers.

Mapper - a plugin with a js script used to remap keys of the input data to those used by the drawer. Also can be used to restructure input data.

Builder - a plugin managing the whole workflow of drawing creation. Builder composes plugin chain (drawer-mapper-adapter) and configures plugins so that they could create a drawing. Then builder (actually the Default builder) iterates through the chain plugins to create and return complete drawing build.

Raw resource format - a plugin converting raw input into a Resource object to be used by builder to create a correct plugin chain. Raw input is the "real stuff" from outside of the chain to create a drawing, usually contains data in some form. Can be a path to a file, a data array, a url or any other. Raw resource format is responsible for converting the intput into a Resource object of a type defined for the given plugin. Also may be used on UI forms to allow user to select which format to use, e.g. when uploading a file. Usually labeled as "Resource format" in such case.

Drawer boilerplate - an abstract class that reflects a common pattern to create drawers. Can be used to create custom drawers in minimum time and effort.

Drawing fetcher - a plugin used by VisualN Fetcher field to get a drawing. Drawing fetchers may be considered as an alternative (to drawer plugins) way to create drawings.

Resource - a plugin used to store info about data of a certain type and how to access it.

Resource provider - a plugin used to get data resource for a drawing. Resource providers can provide resource objects for external sources, entity fields (e.g. a file field), Data set entities or even data generated by themselves (as RandomDataProvider does). Resource providers are used particularly by Drawing fetchers or within VisualN resource provider field.

Data generator - a plugin used to generate data that can be used to create a drawing. Primarily can be used for demonstration purposes to show how a drawer works. Data generators return raw data array in a simple standard form so they don't need any additional specification about the format. Data generators are used via GeneratedResourceProvider plugin.

Data set - a set of data used to create a drawing.

Data source - a configuration entity which stores a reference to a resource provider and default configuration for it.

Help improve this page

Page status: Needs work

You can: