Belgeler ve medyaOrtaBelge üst verisi

PDF Info sözlüğü ve XMP üst verisi

PDF üst verisi iki yerde: trailer Info sözlüğü (D: tarihleri) ve kataloğun XMP akışı (ISO 8601 tarihleri, belge ve örnek kimlikleri).

01Konum

  • trailer /Info → document information dictionary
  • Catalog /Metadata → stream (/Type /Metadata /Subtype /XML) holding an XMP packet
  • Earlier XMP packets left by incremental updates later in the file

02Yanıtladığı sorular

  • Özgün belgeyi hangi uygulama oluşturdu, PDF'i hangisi üretti?
  • PDF ne zaman oluşturuldu, en son ne zaman değiştirildi ve üst verisi en son ne zaman değişti?
  • Bu dosya önceki bir belgenin yeni bir örneği mi (aynı DocumentID, farklı InstanceID)?
  • Info ve XMP değerleri birbiriyle uyumlu mu?

03Biçim ve sürümler

BiçimInfo girdileri PDF metin dizeleridir; tarihler isteğe bağlı +HH'mm gibi bir farkla 'D:YYYYMMDDHHmmSS' biçimini kullanır (ISO 32000-1 §7.9.4). XMP, meta veri akışı içinde UTF-8 kodlu RDF/XML'dir (PDF 1.4+).
Geçerli olduğu sürümlerInfo sözlüğü tüm PDF sürümlerinde; XMP üst veri akışları PDF 1.4'ten itibaren. Eşleme Adobe XMP Belirtimi Bölüm 3'e göredir.

04Temel alanlar

AlanNe anlatır
Info: Title, Author, Subject, KeywordsXMP'de dc:title, dc:creator, dc:description ve pdf:Keywords'e karşılık gelir.
Info: Creator ↔ xmp:CreatorToolÖzgün içeriği oluşturan uygulama.
Info: Producer ↔ pdf:ProducerPDF'i üreten yazılım.
Info: Trapped ↔ pdf:TrappedTrapping durum bayrağı.
xmpMM:DocumentIDBir kaynağın tüm sürümleri ve görüntülemeleri için ortak kimlik.
xmpMM:InstanceIDBelirli bir örneğin kimliği; dosya her kaydedildiğinde güncellenir.
xmpMM:OriginalDocumentID, xmpMM:DerivedFrom, xmpMM:HistoryKaynak belgeye bağlantılar ve bu belgeyi üreten üst düzey eylemlerin listesi.

05Zaman damgaları

AlanKodlamaNot
Info CreationDate, ModDatePDF date string 'D:YYYYMMDDHHmmSS±HH'mm'Yalnızca yıl zorunludur; Chromium ayrıştırıcısı fark verilmediğinde UTC varsayar.
xmp:CreateDate, xmp:ModifyDateISO 8601 subset (YYYY-MM-DDThh:mm:ss.sTZD)Saat dilimi belirtecinin olmaması bölgenin bilinmediği anlamına gelir; varsayılmamalıdır.
xmp:MetadataDateISO 8601 subsetÜst verinin en son değiştiği an; xmp:ModifyDate ile aynı veya ondan sonra olmalıdır.

Ham değerleri Zaman damgası çözücü, yerel saatleri ise Yerel saatten UTC'ye ile çözün.

06İnceleme akışı

  1. Dosyanın özetini alın ve artımlı güncellemelerden gelenler dahil tüm XMP paketlerini ve Info sözlüklerini bulun.
  2. Info tarihlerini farklarıyla, XMP tarihlerini belirteçleriyle çözün; bölgesi olmayan değerleri not edin.
  3. Info ve XMP çiftlerini karşılaştırın (CreationDate/xmp:CreateDate, ModDate/xmp:ModifyDate, Creator/xmp:CreatorTool, Producer/pdf:Producer).
  4. Dosyayı diğer kopyalar veya sürümlerle ilişkilendirmek için DocumentID ve InstanceID'yi kullanın.

07Yorum tuzakları

  • XMP'yi tanımayan bir yazılım Info'yu düzenlediğinde Info ve XMP uyumsuz hâle gelebilir; Acrobat bunu ModDate ile xmp:MetadataDate'i karşılaştırarak çözer.
  • Artımlı kayıtlar eski paketleri silmeden yenilerini ekler; basit bir arama eski bir paketi okuyabilir.
  • xmp:ModifyDate genellikle dosya kaydedilmeden önce ayarlanır ve dosya sistemi değiştirme zamanıyla eşleşmesi gerekmez.
  • Bu değerlerin tamamı herhangi bir PDF aracıyla yazılabilir ve belgenin özgünlüğünü doğrulamaz.

09Kaynaklar

  1. XMP Specification Part 1 — Data model, serialization and core properties Adobe (XMP-Toolkit-SDK, GitHub) · erişim 2026-10-14
  2. XMP Specification Part 2 — Additional properties Adobe (XMP-Toolkit-SDK, GitHub) · erişim 2026-10-14
  3. XMP Specification Part 3 — Storage in files Adobe (XMP-Toolkit-SDK, GitHub) · erişim 2026-10-14
  4. pdf.js — src/core/document.js (documentInfo) Mozilla (GitHub) · erişim 2026-10-14
  5. pdf.js — src/core/catalog.js (Metadata) Mozilla (GitHub) · erişim 2026-10-14
  6. Chromium source — pdf/pdf_utils/dates.cc (ISO 32000-1 §7.9.4 date parsing) The Chromium Authors (GitHub mirror) · erişim 2026-10-14
  7. ISO 32000-1:2008 — Document management — Portable document format (Adobe-hosted copy) Adobe / ISO