private function transformLocation($paramType)
    {
        // Guzzle request locations: (statusCode|reasonPhrase|header|body|json|xml)
        // Guzzle response locations: (uri|query|header|body|formParam|multipart|json|xml|responseBody)
        static $valid = [
            'uri' => 1,
            'xml' => 1,
            'json' => 1,
            'body' => 1,
            'query' => 1,
            'header' => 1,
            'formParam' => 1,
        ];
        // may be already transformed and just passing through
        if (isset($valid[$paramType])) {
            return $paramType;
        }
        static $aliases = [
            'path' => 'uri',
            'body' => 'body',
            'form' => 'formParam',
            'query' => 'query',
            'header' => 'header',
        ];
        // return alias, defaulting to empty
        return isset($aliases[$paramType]) ? $aliases[$paramType] : '';
    }