WCAG 1.3.5 · AA Seviyesi · EN 301 549 9.1.3.5

Girdi Amacını Belirleme

Ad, e-posta ya da adres gibi kullanıcı hakkında bilgi toplayan alanların amacını kodda belirtmesini ister. Böylece tarayıcı ve araçlar bu alanları otomatik doldurabilir.

Kısaca

Bir adı, bir adresi ve bir kart numarasını tekrar tekrar yazmak; motor engeli olan, bellek ya da dikkat güçlüğü yaşayan ve disleksisi olan kişiler için zordur. Tarayıcılar ve yardımcı araçlar bu alanları onlar için doldurabilir, ama yalnızca her alanın ne için olduğunu biliyorlarsa.

Bu kriter, bir alan kullanıcı hakkında bilgi topluyorsa ve amacı WCAG'deki girdi amaçları listesinde yer alıyorsa, alanın amacının programatik olarak belirlenebilmesini ister. Web'de bu, alana given-name ya da email gibi uygun değeri taşıyan bir autocomplete özniteliği vermek demektir.

Neleri kapsar?

  • Hangi alanlar: Kullanıcı hakkında bilgi toplayan alanlar: ad, kullanıcı adı, adres, telefon, e-posta, doğum günü, ödeme kartı ve WCAG girdi amaçları listesindeki benzer öğeler.
  • Hangi alanlar kapsam dışı: Kullanıcı hakkında bilgi toplamayan alanlar; örneğin bir arama kutusu, bir kupon kodu ya da başka birinin bilgileri için bir alan.
  • Değerler: HTML belirtimindeki autocomplete özniteliği değerleri; örneğin name, given-name, family-name, email, tel, street-address, postal-code, country, username, current-password, new-password, cc-number ve cc-exp.
  • Özel kontroller: Yerel bir girdi yerine kendi kontrolünüzü yapıyorsanız amaç yine de kodda bulunmalıdır.
  • Kapsam dışı notlar: Etiketler 1.3.1 ve 3.3.2 kapsamındadır. Bilgiyi yeniden girmek 3.3.7 (Yinelenen Giriş), kimlik doğrulama ise 3.3.8 (Erişilebilir Kimlik Doğrulama) kriterinin konusudur.

Kimleri etkiler?

Motor engeli olan kişiler, alanlar kendileri için doldurulunca daha az yazar. Disleksi dahil bellek, dikkat ya da öğrenme farklılıkları olan kişiler daha az hata yapar. Bir alanı anlamak için simgelerden ya da sembollerden yararlananlar, amacı gösteren araçlardan fayda görür. Küçük ekranda form dolduran herkes zaman kazanır.

EAA ve EN 301 549'da

Avrupa Erişilebilirlik Yasası (Direktif (AB) 2019/882) 28 Haziran 2025'ten sonra piyasaya sunulan kapsamdaki ürün ve hizmetler için geçerlidir. Yasanın 47. gerekçesi web siteleri ve mobil uygulamalar için dört ilkeyi sayar: algılanabilirlik, işletilebilirlik, anlaşılabilirlik ve sağlamlık. Bir alanın amacını kodda sunmak, "algılanabilirlik" ve "anlaşılabilirlik" ilkelerinin parçasıdır.

Teknik karşılığı EN 301 549 standardında bulunur. Standart, WCAG 1.3.5'i atıfla alır ve ortama göre ayrı maddelere dönüştürür.

WCAG 1.3.5'in EN 301 549'daki karşılıkları
MaddeOrtamNe ister?
9.1.3.5Web sayfalarıWeb içeriğinin WCAG 1.3.5 kriterini karşılamasını ister.
11.1.3.5Web dışı yazılım (yerel mobil uygulamalar)Kullanıcı hakkında bilgi toplayan alanlar için yazılımda kriterin karşılanmasını ister.

Kriterin web dışı dokümanlara uygulanıp uygulanmadığı ve nasıl uygulandığı standardın 10. maddesinde belirtilir. Madde numaraları EN 301 549'un "9. + WCAG numarası" düzenine göredir. V3.2.1'de yazılım maddesi, açık ve kapalı işlevsellik için ayrı alt maddelere bölünmüştür. Kaynak gösterirken tam numaraları standarttan kontrol edin.

Standart sürümü: EN 301 549 V4.1.1 (Eylül 2026), WCAG 2.2'yi esas alan ve EAA için hazırlanan ilk sürümdür. Henüz AB Resmî Gazetesi'nde atıf almamıştır; bu nedenle EAA gereksinimlerini karşılamanın gönüllü teknik yolu olarak görülmelidir. Atıf yapıldığında EAA ile ilgili uygunluk karinesi sağlayacaktır. 1.3.5 kriterinin metni WCAG 2.1 ve 2.2'de aynıdır. AA düzeyinde bir kriterdir.

EAA bağlamında dikkat: Yasanın Madde 2/4 hükmü bazı içerikleri gereksinimlerin dışında bırakır; örneğin 28 Haziran 2025'ten önce yayımlanmış ofis dosya biçimleri ve bu tarihten sonra güncellenmeyen arşivler. Bu tarihten sonra yayımladığınız ya da değiştirdiğiniz içerik bu istisnaların kapsamında değildir.

Directive (EU) 2019/882, EUR-Lex, İngilizce, yeni sekmede açılır

Web için kod örnekleri

1. Ad alanları

Alana uyan değeri kullanın. Tek bir "ad" alanı name kullanır.

Hatalı
<label for="ad">Ad</label>
<input id="ad" name="ad">
<label for="soyad">Soyad</label>
<input id="soyad" name="soyad">
Doğru
<label for="ad">Ad</label>
<input id="ad" name="ad" autocomplete="given-name">
<label for="soyad">Soyad</label>
<input id="soyad" name="soyad" autocomplete="family-name">

2. E-posta ve telefon

Doğru girdi türünü uygun değerle birleştirin.

Hatalı
<input type="text" name="posta">
<input type="text" name="telefon">
Doğru
<label for="posta">E-posta</label>
<input id="posta" type="email" name="posta" autocomplete="email">
<label for="telefon">Telefon</label>
<input id="telefon" type="tel" name="telefon" autocomplete="tel">

3. Adres

Adresin her parçasının kendi değeri vardır.

Hatalı
<input name="adres">
<input name="pk">
<input name="ulke">
Doğru
<label for="adres">Sokak adresi</label>
<input id="adres" name="adres" autocomplete="street-address">
<label for="pk">Posta kodu</label>
<input id="pk" name="pk" autocomplete="postal-code">
<label for="ulke">Ülke</label>
<input id="ulke" name="ulke" autocomplete="country-name">

4. Giriş ve kayıt

Giriş formunda current-password, kullanıcı yeni bir parola oluştururken new-password kullanın. Bu parola yöneticilerine de yardımcı olur.

Hatalı
<input type="text" name="k">
<input type="password" name="p">
Doğru
<label for="k">Kullanıcı adı</label>
<input id="k" name="k" autocomplete="username">
<label for="p">Parola</label>
<input id="p" type="password" name="p" autocomplete="current-password">

5. Ödeme kartı

Kart alanlarının kendi değerleri vardır.

Hatalı
<input name="kart">
<input name="skt">
<input name="cvv">
Doğru
<label for="kart">Kart numarası</label>
<input id="kart" name="kart" inputmode="numeric" autocomplete="cc-number">
<label for="skt">Son kullanma tarihi</label>
<input id="skt" name="skt" autocomplete="cc-exp">
<label for="cvv">Güvenlik kodu</label>
<input id="cvv" name="cvv" inputmode="numeric" autocomplete="cc-csc">

6. Kişisel veri alanlarında otomatik doldurmayı kapatmayın

Bir kişisel veri alanında autocomplete="off" yardımı ortadan kaldırır. Bunu yalnızca alan kullanıcıyla ilgili değilse ya da gerçek bir güvenlik nedeni varsa kullanın.

Hatalı
<input type="email" name="posta" autocomplete="off">
Doğru
<input type="email" name="posta" autocomplete="email">

Mobil için kod örnekleri

Yerel mobil uygulamalarda aynı kural geçerlidir. Her alana, platformun otomatik doldurma için kullandığı içerik türünü verin.

iOS (SwiftUI)

import SwiftUI

struct KayitFormu: View {
    @State private var ad = ""
    @State private var soyad = ""
    @State private var eposta = ""

    var body: some View {
        Form {
            TextField("Ad", text: $ad)
                .textContentType(.givenName)

            TextField("Soyad", text: $soyad)
                .textContentType(.familyName)

            TextField("E-posta", text: $eposta)
                .textContentType(.emailAddress)
                .keyboardType(.emailAddress)
        }
    }
}

Android (Jetpack Compose)

import androidx.compose.foundation.layout.Column
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.Text
import androidx.compose.runtime.*
import androidx.compose.ui.Modifier
import androidx.compose.ui.autofill.ContentType
import androidx.compose.ui.semantics.contentType
import androidx.compose.ui.semantics.semantics

// Yeni bir Compose UI sürümü gerekir (1.8 ya da üstü)
@Composable
fun KayitFormu() {
    var ad by remember { mutableStateOf("") }
    var eposta by remember { mutableStateOf("") }

    Column {
        OutlinedTextField(
            value = ad,
            onValueChange = { ad = it },
            label = { Text("Ad") },
            modifier = Modifier.semantics {
                contentType = ContentType.PersonFirstName
            }
        )
        OutlinedTextField(
            value = eposta,
            onValueChange = { eposta = it },
            label = { Text("E-posta") },
            modifier = Modifier.semantics {
                contentType = ContentType.EmailAddress
            }
        )
    }
}

Nasıl test edilir?

  • Kişisel veri alanlarını listeleyin: Kullanıcı hakkında bilgi toplayan her alanı bulun: ad, adres, iletişim bilgileri, giriş ve ödeme.
  • Kodu inceleyin: Bu alanların her birinde bir autocomplete özniteliği var mı ve değer doğru ve geçerli mi? Mobil uygulamalarda içerik türü ayarlanmış mı?
  • Tarayıcının otomatik doldurmasını deneyin: Tarayıcıda bir profil kaydedin, sonra formu açın. Tarayıcı her alanı doğru doldurmayı öneriyor mu?
  • Bir parola yöneticisi deneyin: Giriş ve kayıt alanlarını tanıyor mu?
  • autocomplete="off" arayın: Kullanıcıyla ilgili alanlarda kullanılıyor mu? Bunun bir nedeni var mı?
  • Özel kontrolleri kontrol edin: Bir alan özel öğelerden yapılmışsa amacı kodda bulunuyor mu?
  • Denetleyiciyi başlangıç olarak kullanın: Otomatik araçlar değerin geçerli olduğunu ve alana uyduğunu kontrol edebilir. Alanın kullanıcıyla ilgili olup olmadığına ancak bir kişi karar verebilir.

Sık yapılan hatalar

  • Hiç autocomplete kullanmamak: En yaygın hata.
  • Geçersiz ya da uydurma bir değer kullanmak: autocomplete="fname" gibi değerler belirtimde yoktur ve yok sayılır.
  • Yanlış değeri kullanmak: Örneğin soyad alanında name.
  • Kullanıcıyı "korumak" için otomatik doldurmayı kapatmak: Yardımı ortadan kaldırır ve formu daha güvenli yapmaz.
  • Yanlış girdi türünü kullanmak: E-posta adresi için metin alanı, doğru türün klavyesini ve doğrulamasını kaçırır.
  • Tek bir değeri birçok alana bölmek: Dört kutuda kart numarası, üç kutuda tarih: tarayıcı bunları iyi dolduramaz.
  • Alanı yeniden adlandırırken değeri eklemeyi unutmak: Değer ile ad farklı şeylerdir.
  • Mobili unutmak: Yerel formlar da içerik türünü gerektirir.

Kaynaklar

Standart sürümü: EN 301 549 V4.1.1 (2026-09), WCAG 2.2. Bu sayfa bilgilendirme amaçlıdır ve hukuki tavsiye niteliği taşımaz; bağlayıcı metin için Avrupa Erişilebilirlik Yasası'nın (Direktif (AB) 2019/882) ve EN 301 549 standardının resmî metinlerini esas alın.

Corpowid, Gartner tarafından tanınan bir platformdur.

Corpowid, dijital erişilebilirlik alanındaki yenilikçi yaklaşımı ve performansı nedeniyle dünyanın önde gelen araştırma ve danışmanlık şirketlerinden biri olan Gartner tarafından takdir edilmiştir. Bu rozetler, yapay zeka destekli ve kapsayıcı web deneyimleri oluşturma konusundaki kararlılığımızı yansıtmaktadır.

Corpowid hakkında sorularınız mı var?

Bizimle iletişime geçin.

Size en kısa sürede geri dönüş sağlayacağız.