Кіріспе

Деректерді "стандартты", "нормалды" немесе каноникалық түрге түрлендіру процесі. Компьютер ғылымында каноникаландыру (кейде стандарттау немесе нормалдау) – бірнеше мүмкін бейнелеуі бар деректерді "стандартты", "нормалды" немесе каноникалық түрге түрлендіру процесі болып табылады. Бұл эквиваленттілік үшін әртүрлі бейнелеулерді салыстыруға, ерекше дерек құрылымдарының санын анықтауға, қайталанатын есептеулерді жою арқылы әртүрлі алгоритмдердің тиімділігін арттыруға немесе мағыналы сұрыптау ретін орнатуға мүмкіндік береді.

Файл атаулары

Файл жүйелеріндегі файлдарға көбінесе бірнеше файл атауы арқылы қол жеткізуге болады. Мысалы, Unix сияқты жүйелерде "/./" жолы "/" жолымен алмастырылуы мүмкін. C стандартты кітапханасындағы realpath функциясы осы міндетті орындайды. Бұл функция файл атауларын канониялау үшін тағы да бірнеше операцияларды жүзеге асырады: "/" компоненттерін басқару, жоғарыдағы каталогтарға сілтемелерді өңдеу, көптеген слэштер тізбегін ықшамдау, соңғы слэштерді жою және символдық сілтемелерді ашу. Файл атауларын канониялау компьютерлік қауіпсіздік үшін маңызды. Мысалы, веб-серверде тек C:\inetpub\wwwroot\cgi bin каталогындағы файлдарды ғана орындауға рұқсат беру шектеуі болуы мүмкін. Бұл ереже жолдың C:\inetpub\wwwroot\cgi bin\ деп басталатынын тексеру арқылы күшіне енгізіледі, содан кейін ғана орындалады. C:\inetpub\wwwroot\cgi bin\ \ \ \Windows\System32\cmd.exe файлы бастапқыда cgi каталогында орналасқандай көрінеді, бірақ ол cgi каталогынан тыс файлды орындау үшін каталогтық иерархияны кері бағытта өтуге мүмкіндік беретін жол спецификаторын пайдаланады. cmd.exe файлын орындауға рұқсат беру – бұл файл атауын ең қарапайым түріне, яғни C:\Windows\System32\cmd.exe канониялаудағы сәтсіздікке байланысты туындайтын қателік және бұл каталогты басып өтуге қабілетсіздік деп аталады. Жол канонияланғаннан кейін, файлды орындамау керек екені анық көрінеді.

Юникод

Юникодта көптеген әріптердегі белгілер бірнеше тәсілмен көрсетілуі мүмкін. Мысалы, é Юникодта U+0065 (LATIN SMALL LETTER E) Юникод символы және U+0301 (COMBINING ACUTE ACCENT) символы арқылы көрсетілуі мүмкін, бірақ ол U+00E9 (LATIN SMALL LETTER E WITH ACUTE) алдын ала құрастырылған символы ретінде де көрсетілуі мүмкін. Бұл жолдарды салыстыруды күрделендіреді, себебі мұндай глифтерді қамтитын жолдың барлық мүмкін көрсетілуін қарастыру қажет. Осы мәселені шешу үшін Юникод канондық теңдестіру механизмін ұсынады. Осы контексте канонизация – Юникодты қалыпқа келтіру. Юникод стандартындағы, әсіресе UTF-8 кодировкасындағы өзгермелі ені кейбір жағдайларда канонизация қажеттілігін тудыруы мүмкін. Атап айтқанда, стандарт бойынша UTF-8-де кез келген Юникод символы үшін тек бір ғана жарамды байт тізбегі бар, бірақ кейбір байт тізбектері жарамсыз, яғни оларды UTF-8-ге кез келген Юникод символдар тізбегін кодилеу арқылы алуға болмайды. Кейбір салмақты декодерлер жарамсыз байт тізбектерін қабылдап, олар үшін жарамды Юникод символын шығаруы мүмкін. Егер мұндай декодер қолданылса, кейбір Юникод символдарының бірнеше байт тізбегі болады: жарамды және жарамсыз. Бұл бұрынғы бөлімде сипатталғанға ұқсас қауіпсіздік мәселелеріне әкелуі мүмкін. Сондықтан, егер сіз UTF-8 жолдарына қандай да бір сүзгіні (мысалы, UTF-8 жолында жазылған тұрақты өрнекті) қолданғыңыз келсе, ол сүзгі жарамсыз байт тізбектерін қабылдайтын декодерге жіберілгенде, жолдарды алдымен канонизациялау керек. Осы контексте канонизация – әрбір жол символын оның жалғыз жарамды байт тізбегіне аудару процесі. Канонизацияға балама – жарамсыз байт тізбектерін қамтитын кез келген жолдарды қабылдамау.

URL адресі

Каноникалық URL – дубликат контент үшін анықталған жалғыз нақты көз URL.

Google пайдалануы

Каноникалық URL – Google-дің пікірінше, сіздің сайтыңыздағы бірнеше ұқсас беттердің арасынан ең негізгісі саналатын беттің URL-і. Мысалы, егер сізде бір бетке қатысты бірнеше URL болса (мысалы, https://example.com/?dress=1234 және https://example.com/dresses/1234), Google олардың біреуін каноникалық деп таңдайды. Беттердің мүлдем бірдей болуы міндетті емес; тізім беттеріндегі сұрыптау немесе сүзгілеудегі шағын өзгерістер бетті ерекше етпейді (мысалы, баға бойынша сұрыптау немесе тауар түсі бойынша сүзгілеу). Каноникалық URL дубликаттан басқа доменде де орналасуы мүмкін.

Интернет

Каноникалық URL-дердің көмегімен іздеу жүйесі сұраныс нәтижесінде қай сілтемені көрсету керектігін біледі. Каноникалық сілтеме тегі каноникалық URL-ді анықтау үшін қолданылуы мүмкін.

Интранет

Интранеттерде ақпаратты қолмен іздеу әдетке айналған. Мұндай жағдайда, каноникалық URL-дер машинамен оқылмайтын форматта да берілуі мүмкін. Мысалы, нұсқаулықта.

Түрлі

Канондық URL-дер әдетте бөлісу үшін қолданылатын URL-дер болып табылады. Канондық URL іздеу жүйелерінің іздеу нәтижелерінде пайдаланылатындықтан, көбінесе бастапқы бет болып табылады.

Есептеу тіл білімі

Морфология мен лексикографияда лемма – сөздер тобының қалыпты түрі. Мысалы, ағылшын тілінде run, runs, ran және running сөздері бір лексеманың формалары болып табылады, сондықтан олардың біреуін – мысалы, run – барлық формаларды көрсету үшін таңдауға болады. Unitex сияқты лексикалық дерекқорлар осы сияқты бейнелеуді пайдаланады. Лемматизация – сөзді қалыпты түріне келтіру процесі.