İsteğe bağlı olmasına rağmen, her iletinin bir "Message-ID:" alanı olması gerekir *ÖNERİ*. Diğer yandan, yanıt iletilerinin aşağıda açıklandığı gibi uygun düştüğünde "In-Reply-To:" ve "References:" alanlarını da içermesi gerekir *ÖNERİ*.
"Message-ID:" alanı tek bir eşsiz ileti kimliği içerir. "References:" ve "In-Reply-To:" alanlarının her biri bir veya daha fazla sayıda ileti kimliği içerir; bunlar birbirlerinden isteğe bağlı olarak AKBOŞ belirtimi ile ayrılabilir.
İleti kimliği (ilt-id), dahili AKBOŞ belirtimi olmaksızın açılı-adres sözdizimine benzer.
ileti-id = "Message-ID:" ilt-id CRLF
ata-id = "In-Reply-To:" 1*ilt-id CRLF
atıflar = "References:" 1*ilt-id CRLF
ilt-id = [AKBOŞ] "<" id-sol "@" id-sağ ">" [AKBOŞ]
id-sol = nokta-atom-dizgesi / katsız-tırnak / atıl-id-sol
id-sağ = nokta-atom-dizgesi / katsız-sabit / atıl-id-sağ
katsız-tırnak = ÇTIRNAK *(tdizge / öteli-çift) ÇTIRNAK
katsız-sabit = "[" *(ddizgesi / öteli-çift) "]"
"Message-ID:" alanı, belli bir iletinin belli bir sürümüne atıf yapan bir eşsiz ileti kimliği sağlar. İleti kimliğinin eşsizliği onu üreten konak tarafından garanti edilir (aşağıya bakınız). Bu ileti kimliği insanlarca okunabilir olması gerekmeyen makinelerce okunabilen biçimde tasarlanır. Bir ileti kimliği belli bir iletinin sadece tek bir nesnel örneği ile ilgilidir; iletinin sonraki sürümlerinin her biri yeni bir ileti kimliği alır.
| Not |
---|
İletiler "değiştirildikçe" çok sayıda örneği olur, fakat bu değişiklikler daima bu iletinin yeni bir örneğini oluşturmaz ve bu nedenle ileti yeni ileti kimliği almaz. Örneğin, iletiler aktarım sistemine girerken, bunların başlarına çoğunlukla izleme alanları (bkz, İzleme alanları) ve yeniden gönderim alanları (bkz, Yeniden gönderim alanları) gibi başlık alanları eklenir. Bu ek başlık alanları iletinin kimliğini değiştirmez ve dolayısıyla özgün " Message-ID:" alanı değişmeden kalır. Tüm durumlarda, bu, ileti göndericisinin iletide (görünsün/görünmesin) belli bir sözdizimsel farkın değil " Message-ID:" alanının değişip değişmediği saptamasının bildirilmesini istediği anlamına gelir.
|
"In-Reply-To:" ve "References:" alanları bir iletiye yanıt oluşturulurken kullanılır. Bunlar, özgün iletinin ileti kimliğini ve (örneğin yanıtlanan iletinin kendisinin bir yanıt olduğu durumda) diğer iletilerin ileti kimliklerini de barındırırlar. "In-Reply-To:" alanı yeni iletinin bir yanıtı olduğu iletiyi tanıtmakta kullanılabilirken, "References:" alanı tartışmanın "evrelerini" tanıtmakta kullanılabilir.
Bir iletiye bir yanıt oluşturulurken, sonuçlanacak iletinin "In-Reply-To:" ve "References:" alanları şöyle oluşturulurlar:
"In-Reply-To:" alanı, yanıtı olduğu iletinin ("ata ileti") "Message-ID:" değerini içerecektir. Eğer birden fazla ata ileti varsa, "In-Reply-To:" alanı tüm ata iletilerin "Message-ID:" değerlerini içerecektir. Ata iletilerin hiçbiri "Message-ID:" alanı içermiyorsa, yeni iletide bir "In-Reply-To:" alanı olmayacaktır.
"References:" alanı, ata iletinin (varsa) "References:" değerine ek olarak ata iletinin (varsa) "Message-ID:" değerini içerecektir. Eğer ata iletinin bir "References:" alanı yoksa ama "In-Reply-To:" alanı mevcut ve tek bir ileti kimliği içeriyorsa, "References:" alanı ata iletinin "In-Reply-To:" değerine ek olarak ata iletinin (varsa) "Message-ID:" değerini içerecektir. Eğer ata iletide "References:", "In-Reply-To:" ve "Message-ID:" alanları yoksa, yeni iletinin "References:" diye bir alanı olmayacaktır.
| Not |
---|
Bazı gerçeklenimler "References:" alanının değerini "tartışmanın konu ağacını" göstermek için kullanırlar. Bu gerçeklenimler her iletinin tek bir ata iletinin yanıtı olduğunu varsayarlar ve dolayısıyla her iletinin atasını bulmak için "References:" alanında geriye doğru yürürler. Bu nedenle, çok sayıda atanın yanıtı olan bir iletinin "References:" alanını şekillendirmeye çalışmaktan vazgeçilmiş olup nasıl yapılacağı bu belgede tanımlanmamıştır.
|
İleti kimliğinin (ilt-id) kendisi o ileti için genel anlamda eşsiz bir kimlik olmalıdır *ZORUNLU*. İleti kimliği üreteci ilt-id'nin eşsizliğini garanti etmelidir *ZORUNLU*. ilt-id sözdizimsel olarak açılı-adrese benzediğinden (açıklamalar va katlama boşlukları atıldığında eşdeğerdir), ileti kimliğini oluşturmanın en iyi yolu, ileti kimliğinin oluşturulduğu konağın alan ismini (veya IP adresli alan sabitini) de-imi karakterinin sağına koyup, soluna da, o anki mutlak tarih ve saate ek olarak sistemde o an için eşsiz olan bir başka kimliği (muhtemelen sıralı bir değer, örneğin, sürecin kimliğini) koymaktır. Tarihin solda, konak alan adının da sağda yeralması zaten eşsizliği sağlayacaktır, çünkü Genel Ağ'da aynı anda aynı konak alan adı ve IP adresine sahip başka bir konak olamaz. Diğer algoritmalar da iş görecek olsa da, bir konak veya benzeri bir alan için bir ileti kimliği üretecek bir üretecin, o alan için eşsiz bir sol taraf üretmesini garanti edeceğinden, sağ tarafın konak alanı kimliğini içermesi tavsiye edilir *ÖNERİ*.
Sözdizimsel olarak açılı ayraç karakterleri ilt-id'nin birer parçası dağildirler; ilt-id bu iki açılı ayraç arasında kalan nesnedir.