representation.file.extensionFile name extension or suffix (txt, pdf, docx, jpg, etc.). May include or exclude leading dot.
$ finetype infer -i "txt"
→ representation.file.extensionSELECT finetype('txt');
-- → 'representation.file.extension'LOWER(REGEXP_REPLACE({col}, '^\.*', ''))-- Normalise and cast in one step
SELECT TRY_CAST(finetype_cast(my_column) AS VARCHAR) AS clean_value
FROM my_table
WHERE finetype(my_column) = 'representation.file.extension';category: CASE WHEN {col} IN ('txt', 'doc', 'docx', 'pdf', 'rtf') THEN 'document' WHEN {col} IN ('jpg', 'jpeg', 'png', 'gif', 'bmp', 'svg') THEN 'image' WHEN {col} IN ('mp4', 'avi', 'mov', 'mkv', 'webm') THEN 'video' WHEN {col} IN ('mp3', 'wav', 'flac', 'aac', 'm4a') THEN 'audio' WHEN {col} IN ('zip', 'rar', '7z', 'tar', 'gz') THEN 'archive' ELSE 'other' END{
"$id": "https://meridian.online/schemas/representation.file.extension",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "File name extension or suffix (txt, pdf, docx, jpg, etc.). May include or exclude leading dot.",
"examples": [
"txt",
".pdf",
"docx",
"jpg",
"xlsx"
],
"pattern": "^\\.?[a-zA-Z0-9]{1,10}$",
"title": "File Extension",
"type": "string",
"x-finetype-broad-type": "VARCHAR",
"x-finetype-transform": "LOWER(REGEXP_REPLACE({col}, '^\\.*', ''))"
}txt.pdfdocxjpgxlsx