SysSchema
Module to check and clean values coming into the AURORA-system and defining metadata namespace.
use SysSchema;
# clean value
my $email="john.doe@somedomain.top";
$email=$SysSchema::CLEAN{email}->($email);
# get metadata namespace
my $usernamelocation=$SysSchema::MD{username};
# get constant
my $setcreated=$SysSchema::C{"status.open"};
Module to check and clean values entered into the AURORA-system, but also to get namespace locations of specific metadata that are often used in some way.
This module is used everywhere in the AURORA-system when cleaning and checking of values are needed, so that the definition of it is in one place. The only exception is AuroraDB who has its own schema-module (Schema.pm).
It also contains a constant-section.
The various data-structures in order of appearance are:
NTYP HASH that defines notification types and their voting defaults.
C HASH that defines Constants.
CLEAN HASH that defines cleaning for various values used by the AURORA-system and their defaults.
MD HASH that contains metadata namespace definitions of where often used information is located.
MDPUB HASH that contains metadata namespace locations that are considered public metadata that can be handed out, even though it is located in the non-public part of the metadata (not starting with ".").
CFG HASH that defines where in the AURORA configuration file that various values are set.
In addition to these structures, the SysSchema-module also contains a definition of sources for various Notifications. Valid definitions are: $FROM_UNKNOWN, $FROM_REST, $FROM_MAINTENANCE, $FROM_NOTIFICATION, $FROM_LOG and $FROM_STORE.
Beyond this have a look in the SysSchema-module itself for more information about what is defined within the various structures themselves.