protected static function getStaticFields()
    {
        //
        $attribute = 'StaticFields';

        // retrieve value from class setting definition
        if (!static::hasClassAttribute($attribute)) {
            $class = static::getClass();

            //
            $reflection = new \ReflectionClass($class);

            //
            $fields = array_keys($reflection->getStaticProperties());

            // store as setting for future request
            static::setClassAttribute($attribute, $fields);
        }

        // return primary key field name
        return static::getClassAttribute($attribute);
    }