Nesting Markup Schema dengan @id dan @graph
Panduan mendalam untuk menghubungkan entitas JSON-LD dengan @id dan @graph, memakai dua pola node canonical, menghindari tiga kegagalan graph, dan memahami batas dokumentasi Google.
Bahasa
Nesting menghubungkan entitas JSON-LD melalui @id, yaitu URI stabil dan unik yang memungkinkan entitas lain merujuknya tanpa deklarasi ulang. @graph menyatukan entitas yang terhubung dalam satu blok skrip. Gunakan pola WebSite → WebPage → Article → Author untuk penerbitan dan Product → Offer → Organization untuk ecommerce. Hindari @id yang tidak konsisten atau tidak unik, referensi yatim, dan deklarasi lengkap duplikat. Google mengonfirmasi bahwa nesting dan item individual sama-sama berfungsi, tetapi tidak mengonfirmasi penguraian @id lintas halaman. Pilihan aman adalah mempertahankan @id yang konsisten sekaligus menyertakan graph lengkap pada setiap halaman yang memerlukannya. Nesting membantu pemahaman entitas; bukan faktor peringkat atau jaminan rich result.
Evidence for this claim JSON-LD supports connected nodes via nesting or @id references, allowing multiple related entities to form one graph. Scope: JSON-LD graph model. Confidence: high · Verified: W3C JSON-LD 1.1 Evidence for this claim Google requires structured data to represent visible page content and follow each feature's specific nesting and property guidelines; extra valid nodes do not create eligibility by themselves. Scope: Current Google structured-data general guidelines. Confidence: high · Verified: Google Search Central: Structured data general guidelinesTL;DR — Nesting menghubungkan markup schema Anda, bukan membiarkannya sebagai kumpulan blok yang terpisah.
@idadalah nama unik untuk sebuah entitas—biasanya URL halaman ditambah#tag—agar entitas lain dapat merujuknya tanpa mengulang seluruh detail.@graphmenampung beberapa entitas yang saling terhubung dalam satu blok kode. Hasilnya: deklarasikan organisasi sekali, rujuk di mana pun diperlukan, dan hindari menyalin blok yang sama ke setiap halaman.
Masalah yang diselesaikan oleh nesting
Misalkan situs Anda memiliki sebuah Organization—nama, logo, dan tautan ke profil
sosial. Setiap posting blog juga memiliki sebuah Article dengan penulis dan
penerbit. Tanpa nesting, Anda menulis ulang seluruh detail organisasi—nama, logo,
dan setiap tautan sosial—di dalam markup setiap posting. Ketika logo berubah,
Anda harus memperbaruinya di empat puluh tempat.
Nesting mengatasinya. Anda mendeklarasikan organisasi sekali, memberinya nama yang stabil, lalu cukup merujuk nama itu di tempat lain. Artikel ini mengasumsikan Anda sudah memahami markup schema dan JSON-LD. Jika belum, mulailah dari hub data terstruktur, lalu kembali ke sini.
@id — nama yang Anda berikan kepada entitas
@id adalah pengenal unik untuk satu entitas. Konvensinya ialah menggunakan URL
halaman yang sebenarnya ditambah sebuah fragmen, seperti berikut:
{
"@type": "Organization",
"@id": "https://example.com/#organization",
"name": "Example Co",
"logo": "https://example.com/logo.png"
}Nilai "@id": "https://example.com/#organization" kini menjadi nama entitas.
Di tempat lain yang perlu menyatakan bahwa penerbitnya adalah Example Co, Anda
tidak perlu menulis ulang semua detail tersebut—cukup arahkan ke namanya:
{
"@type": "Article",
"publisher": { "@id": "https://example.com/#organization" }
}Satu hal kecil tetapi penting: @id adalah mekanisme penautan internal, bukan
halaman yang Anda publikasikan. Nilainya tidak harus berupa URL nyata yang dapat
diambil. Penggunaan fragmen pada domain sendiri adalah praktik standar, dan URL
fragmen tersebut tidak harus memuat halaman tersendiri. Ini berbeda dari properti
url, yang memang menjelaskan halaman nyata.
@graph — menyatukan entitas yang terhubung
@graph memungkinkan Anda mencantumkan beberapa entitas dalam satu blok kode,
alih-alih menyebarkannya ke banyak blok. Jadi, bukan tiga blok <script> terpisah,
Anda menulis satu blok:
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Organization", "@id": "https://example.com/#organization", "name": "Example Co" },
{ "@type": "WebSite", "@id": "https://example.com/#website", "publisher": { "@id": "https://example.com/#organization" } }
]
}Anda menulis @context sekali di bagian atas, lalu entitas di dalamnya saling
merujuk melalui @id. Setelah ada beberapa bagian yang terhubung, pola ini lebih
rapi dan lebih mudah dipelihara.
Hal yang harus tepat
Dua aturan mencakup sebagian besar kebutuhan:
- Jaga konsistensi. Gunakan string
@idyang sama untuk entitas yang sama di mana pun. Jika organisasi Anda memakai#organizationdi satu halaman dan#orgdi halaman lain, mesin pencari tidak dapat mengetahui bahwa keduanya merujuk hal yang sama. - Jangan merujuk sesuatu yang tidak ada. Jika penulis sebuah
Articlemerujuk{"@id": "#author-jane"}, pastikan#author-janebenar-benar dideklarasikan dengan@typedan detailnya. Referensi ke entitas yang tidak pernah Anda definisikan akan gagal tanpa peringatan.
Tetaplah realistis: nesting yang baik membantu mesin pencari memahami entitas dan menghindari data duplikat. Nesting sendiri tidak membuat peringkat lebih tinggi atau membuka rich result.
Ingin panduan lengkap—dua pola standar beserta contoh siap salin, tiga kesalahan yang merusak graph, serta hal yang benar-benar dikonfirmasi (dan tidak dijelaskan) oleh dokumentasi Google? Buka tab Advanced.
Audit graph JSON-LD tanpa mengarang entitas
Audit the JSON-LD below as a graph.
1. Inventory every declared node: @id, @type, and where it is declared.
2. Inventory every @id reference made by another node.
3. Flag exact orphan references, duplicate full declarations, case/fragment drift,
unstable-looking IDs, and relationships that point at the wrong entity type.
4. Distinguish a reference-only object ({"@id":"..."}) from a full declaration.
5. Do not assume an @id resolves across pages and do not invent missing facts.
6. Return (a) a findings table, (b) a minimal corrected graph using the existing
facts only, and (c) questions for facts that cannot be verified from the input.
JSON-LD:
[PASTE SCRIPT CONTENT]Untuk membandingkan templat, berikan dua graph hasil render dan minta model
mencantumkan ID yang berubah secara tidak terduga. Entitas stabil seperti penerbit
harus mempertahankan @id peka huruf besar-kecil yang sama; entitas khusus halaman
harus tetap unik bagi halaman canonical masing-masing.
Temukan ID yatim dan duplikat dalam JSON-LD hasil render
Jalankan kode berikut di DevTools Console. Kode ini mengurai setiap blok JSON-LD,
menelusuri array dan @graph, lalu memisahkan deklarasi lengkap dari objek @id
yang hanya berfungsi sebagai referensi.
const documents = [...document.querySelectorAll('script[type="application/ld+json"]')]
.flatMap((script, scriptIndex) => {
try {
return [{ scriptIndex, value: JSON.parse(script.textContent) }];
} catch (error) {
console.warn(`Invalid JSON-LD in script ${scriptIndex + 1}`, error);
return [];
}
});
const declarations = new Map();
const references = [];
function walk(value, path, scriptIndex) {
if (Array.isArray(value)) {
value.forEach((item, i) => walk(item, `${path}[${i}]`, scriptIndex));
return;
}
if (!value || typeof value !== 'object') return;
if (typeof value['@id'] === 'string') {
const keys = Object.keys(value).filter((key) => key !== '@id');
if (keys.length) {
const rows = declarations.get(value['@id']) ?? [];
rows.push({ script: scriptIndex + 1, path, keys: keys.join(', ') });
declarations.set(value['@id'], rows);
} else {
references.push({ id: value['@id'], script: scriptIndex + 1, path });
}
}
Object.entries(value).forEach(([key, child]) =>
walk(child, `${path}.${key}`, scriptIndex));
}
documents.forEach(({ value, scriptIndex }) => walk(value, '$', scriptIndex));
console.table(references.filter(({ id }) => !declarations.has(id)));
console.table([...declarations.entries()]
.filter(([, rows]) => rows.length > 1)
.map(([id, rows]) => ({ id, declarations: rows.length, locations: rows })));Tabel referensi yatim yang kosong memang berguna, tetapi tidak membuktikan bahwa graph sudah benar secara semantik. Tinjau ID yang peka huruf besar-kecil, jenis entitas, URL canonical, dan apakah graph lengkap yang dibutuhkan halaman ini benar- benar tersedia.
Evidence for this claim JSON-LD supports connected nodes via nesting or @id references, allowing multiple related entities to form one graph. Scope: JSON-LD graph model. Confidence: high · Verified: W3C JSON-LD 1.1 Evidence for this claim Google requires structured data to represent visible page content and follow each feature's specific nesting and property guidelines; extra valid nodes do not create eligibility by themselves. Scope: Current Google structured-data general guidelines. Confidence: high · Verified: Google Search Central: Structured data general guidelinesTL;DR — Nesting menghubungkan entitas JSON-LD melalui
@id—URI stabil dan unik, biasanya URL canonical ditambah#fragment—sehingga Anda merujuk entitas, bukan mendeklarasikannya ulang.@graphadalah kata kunci yang menyatukan entitas terhubung dalam satu blok skrip. Dokumentasi Google mengonfirmasi bahwa nesting dan item individual sama-sama berfungsi, serta@iddigunakan untuk menautkan item terkait. Namun, dokumentasi itu tidak pernah mengonfirmasi apakah@iddiurai lintas halaman. Karena itu, pilihan aman adalah nilai@idyang konsisten serta graph entitas lengkap pada setiap halaman yang memerlukannya. Pelajari dua pola:WebSite → WebPage → Article → Authoruntuk penerbitan danProduct → Offer → Organization/selleruntuk ecommerce. Waspadai tiga mode kegagalan: nilai@idyang tidak konsisten atau tidak unik, referensi yatim—@iddirujuk tetapi tidak pernah dideklarasikan; tidak lengkap secara semantik, bukan JSON-LD yang tidak valid—serta deklarasi lengkap duplikat untuk entitas yang sama. Pengulangan entitas yang sama digabung menurut aturan node JSON-LD, tetapi penggunaan satu@iduntuk entitas yang benar-benar berbeda menimbulkan konflik nyata. Nesting adalah alat untuk memahami entitas, disambiguasi, dan deduplikasi; bukan pengungkit peringkat atau rich result.
Cakupan: pembahasan mendalam, bukan pengantar
Artikel ini mengasumsikan Anda sudah memahami JSON-LD dan alasan format tersebut
direkomendasikan. Hal itu dibahas di halaman markup schema,
yang juga memperkenalkan @id dan @graph secara ringkas. Halaman ini adalah
pembahasan lanjutannya: mekanisme sebenarnya, pola node standar, dan kesalahan
tertentu yang diam-diam merusak graph. Jika Anda memerlukan dasar format atau lokasi
blok <script>, lihat artikel pendamping tentang
JSON-LD.
@id — pengenal stabil, bukan URL yang harus dapat diambil
@id menetapkan URI unik kepada entitas JSON-LD agar entitas lain dapat merujuknya.
Konvensi yang konsisten di setiap sumber kredibel yang saya periksa ialah URL
canonical absolut ditambah fragmen deskriptif:
"@id": "https://example.com/#organization"
"@id": "https://example.com/#website"
"@id": "https://example.com/team/jane-doe/#person"Ada dua hal yang sering disalahpahami:
- Nilainya tidak harus dapat diambil. Menurut spesifikasi JSON-LD,
tugas
@idadalah mengidentifikasi node—memberikan “nama” unik dan stabil untuk entitas—bukan memastikan URL dapat diambil. Penggunaan fragmen pada domain sendiri adalah praktik standar dan tidak mengharuskan URL fragmen itu memuat halaman tersendiri. Panduan pengenal node dari Sitebulb menjelaskannya dengan baik: “a unique ‘name’ for an entity, which is publicly accessible and can be looked up or linked to.” (terjemahan) “nama unik untuk sebuah entitas, yang dapat diakses publik serta dapat dicari atau ditautkan.” @idbukanurl. Keduanya merupakan properti berbeda dengan tugas berbeda.@idmengidentifikasi node dalam graph;urlmenjelaskan halaman nyata yang dapat diambil tentang entitas tersebut. SebuahOrganizationdapat—dan sering kali sebaiknya—memiliki keduanya:@idberupahttps://example.com/#organizationdanurlberupahttps://example.com/.
Nilai @id juga peka huruf besar-kecil. #Organization dan #organization
adalah dua entitas berbeda. Pilih satu konvensi dan jangan menyimpang darinya.
@graph — menyatukan entitas terhubung dalam satu blok
@graph adalah kata kunci JSON-LD yang memungkinkan Anda menempatkan beberapa
entitas tingkat atas dalam satu array di dalam satu blok
<script type="application/ld+json">, dengan entitas saling merujuk melalui @id:
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Organization", "@id": "https://example.com/#organization", "...": "..." },
{ "@type": "WebSite", "@id": "https://example.com/#website", "...": "..." },
{ "@type": "WebPage", "@id": "https://example.com/post/#webpage", "...": "..." }
]
}@graph adalah wadah, bukan kewajiban. Anda tetap dapat menggunakan blok
<script> terpisah untuk tiap item; dokumentasi Google mengonfirmasi bahwa kedua
pendekatan berfungsi. Alasan memilih @graph adalah kemudahan pemeliharaan. Ketika
ada tiga entitas atau lebih yang saling merujuk, Anda cukup menulis @context
sekali di bagian atas dan seluruh hubungan berada di satu tempat. Inilah pola yang
digunakan Yoast dalam produksi. Dokumentasi arsitektur schema
mereka menjelaskan bahwa graph bersama memungkinkan mereka “avoid having to
duplicate or repeat shared properties, and to reduce the amount of
code/processing/overhead required.” (terjemahan) “menghindari duplikasi atau
pengulangan properti bersama, serta mengurangi jumlah kode, pemrosesan, dan overhead
yang diperlukan.”
Mengapa perlu nesting—dan apa yang sebenarnya dikatakan Google
One Organization identified as hash organization is referenced as publisher by the WebSite and Article. The WebPage belongs to the WebSite and is connected to the Article. Each entity is declared once, and the same stable at-id string is reused for every reference.
Google mendokumentasikan dua opsi struktur dan mengonfirmasi bahwa keduanya dapat dipahami. Dalam Pedoman Umum Data Terstruktur: “Google Search understands multiple items on a page, whether you nest the items or specify each item individually.” (terjemahan) “Google Penelusuran memahami beberapa item pada sebuah halaman, baik Anda menempatkan item tersebut secara nested maupun menentukan setiap item secara terpisah.” Google menjelaskan keduanya secara langsung: nesting adalah “when there is one main item, and additional items are grouped under the main item” (terjemahan) “ketika ada satu item utama dan item tambahan dikelompokkan di bawah item utama”; sedangkan item individual adalah “when each item is a separate block on the same page.” (terjemahan) “ketika setiap item merupakan blok terpisah pada halaman yang sama.”
Paragraf yang paling mendekati alasan resmi penggunaan @id berbunyi: “If there
are items that are more helpful when they are linked together (for example, a recipe
and a video), use @id in both the recipe and the video items to specify that the
video is about the recipe on the page. If you didn’t link the items together, Google
Search may not know that it can show the video as a Recipe rich result.”
(terjemahan) “Jika ada item yang lebih berguna ketika ditautkan bersama—misalnya
resep dan video—gunakan @id pada item resep dan video untuk menentukan bahwa video
tersebut membahas resep pada halaman. Jika item tidak ditautkan, Google Penelusuran
mungkin tidak mengetahui bahwa video itu dapat ditampilkan sebagai rich result
Resep.” Itulah mekanisme menurut kata-kata Google sendiri: @id memberi tahu
Google bahwa dua item saling berkaitan.
Catatan yang perlu disampaikan secara jujur: dokumentasi Google menyatakan prinsip
ini dalam prosa, tetapi tidak menyediakan contoh kode @graph + @id yang
lengkap. Contoh mereka menampilkan Recipe yang di-nesting dan dua item tingkat atas
yang terpisah; keduanya tidak saling merujuk melalui @id. Contoh berikut mengisi
kekosongan tersebut.
Hal ini langsung berkaitan dengan dua tugas schema—kerangka dari halaman
markup schema. Nesting yang
baik merupakan langkah untuk memahami entitas: melakukan disambiguasi serta
menghindari data yang bertentangan atau duplikat. Nesting bukan pemicu rich result
tersendiri. Menautkan Article dengan rapi ke Author tidak membuka fitur SERP
baru; hubungan tersebut hanya menjadi tidak ambigu.
Pola 1 — WebSite → WebPage → Article → Author
Ini adalah pola canonical untuk penerbitan: satu Organization sebagai penerbit,
satu WebSite, lalu sebuah WebPage dan Article untuk tiap halaman. author
dan publisher dihubungkan melalui @id, bukan dideklarasikan ulang:
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://example.com/#organization",
"name": "Example Media",
"url": "https://example.com/",
"logo": "https://example.com/logo.png",
"sameAs": [
"https://www.linkedin.com/company/example-media/",
"https://en.wikipedia.org/wiki/Example_Media"
]
},
{
"@type": "WebSite",
"@id": "https://example.com/#website",
"url": "https://example.com/",
"name": "Example Media",
"publisher": { "@id": "https://example.com/#organization" }
},
{
"@type": "WebPage",
"@id": "https://example.com/nesting-schema/#webpage",
"url": "https://example.com/nesting-schema/",
"name": "Nesting Schema Markup",
"isPartOf": { "@id": "https://example.com/#website" }
},
{
"@type": "Person",
"@id": "https://example.com/team/jane-doe/#person",
"name": "Jane Doe",
"url": "https://example.com/team/jane-doe/",
"sameAs": ["https://www.linkedin.com/in/jane-doe/"]
},
{
"@type": "Article",
"@id": "https://example.com/nesting-schema/#article",
"mainEntityOfPage": { "@id": "https://example.com/nesting-schema/#webpage" },
"headline": "Nesting Schema Markup",
"author": { "@id": "https://example.com/team/jane-doe/#person" },
"publisher": { "@id": "https://example.com/#organization" }
}
]
}Perhatikan prosesnya: author dan publisher berupa referensi satu baris.
Person dan Organization masing-masing dideklarasikan sekali. Article
terhubung ke WebPage melalui mainEntityOfPage; WebPage menjadi bagian dari
WebSite melalui isPartOf; dan WebSite diterbitkan oleh Organization.
Inilah graph yang terhubung, bukan lima pulau terpisah.
Pola 2 — Product → Offer → Organization (penjual)
Ini adalah pola setara untuk ecommerce, sekaligus tempat nesting sangat berguna
dalam skala besar. Alih-alih mendeklarasikan ulang Organization milik merchant
pada ribuan halaman produk, deklarasikan sekali lalu rujuk sebagai seller:
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://shop.example.com/#organization",
"name": "Example Shop",
"url": "https://shop.example.com/",
"logo": "https://shop.example.com/logo.png"
},
{
"@type": "Product",
"@id": "https://shop.example.com/widget/#product",
"name": "Deluxe Widget",
"sku": "WIDGET-001",
"brand": { "@type": "Brand", "name": "Example" },
"offers": {
"@type": "Offer",
"price": "29.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"seller": { "@id": "https://shop.example.com/#organization" }
}
}
]
}seller pada Offer menunjuk ke node Organization bersama. Entitas penjual
yang sama dideklarasikan sekali, lalu dirujuk dari setiap produk. Untuk kumpulan
varian yang sangat besar, gagasan @id bersama ini juga berlaku pada ProductGroup
dengan varian Product. Itu adalah spesialisasi pola yang sama, bukan mekanisme
berbeda.
Tiga kesalahan yang merusak graph
Inilah inti praktis sebuah audit. Ketika nesting “tidak berfungsi”, penyebabnya hampir selalu salah satu dari tiga hal berikut.
1. Nilai @id yang tidak konsisten atau tidak unik
Entitas yang sama diberi string @id berbeda pada halaman yang berbeda—atau
selama perpindahan platform maupun migrasi—sehingga mesin pencari dan validator
melihatnya sebagai entitas yang tidak berkaitan. Kebalikannya juga bermasalah:
satu @id digunakan untuk dua entitas yang benar-benar berbeda. Solusinya adalah
konvensi yang ketat dan terdokumentasi, misalnya {base-url}/#organization,
{page-url}/#webpage, dan {profile-url}/#person, lalu diterapkan secara
mekanis. Huruf besar-kecil berpengaruh: #author ≠ #Author.
2. Referensi yatim
Sebuah @id dirujuk tetapi tidak pernah dideklarasikan. Misalnya, Anda menulis
"author": {"@id": "https://example.com/#person-jane"}, tetapi tidak ada node
dalam dokumen yang diuji yang mendeklarasikan @id tersebut beserta @type dan
propertinya. Perlu dibedakan dengan tepat: objek polos {"@id": "..."}—yang dalam
spesifikasi JSON-LD disebut node reference,
yakni “a node object used to reference a node having only the @id key”
(terjemahan) “objek node untuk merujuk node yang hanya memiliki kunci @id”—
merupakan sintaks JSON-LD yang valid. Objek itu bukan kesalahan parsing. Masalahnya
bersifat semantik dan bergantung pada konsumennya: hubungan yang dimaksud—“penulis
Article ini adalah Person tersebut”—tidak pernah mengarah ke informasi berguna.
Fitur atau pembaca yang memerlukan nama, URL, atau data sameAs penulis tidak
mendapat apa pun. Ini sulit terdeteksi karena validator sering tetap mengurai setiap
item yang dideklarasikan tanpa kesalahan. Anda dapat menerbitkan graph yang tidak
lengkap tanpa menyadarinya. Panduan @id Momentic
mencatatnya sebagai salah satu kegagalan nesting yang paling umum.
3. Deklarasi lengkap duplikat untuk entitas yang sama
Ini kebalikan dari referensi yatim: objek Organization atau Person lengkap
dideklarasikan ulang secara inline di setiap halaman, bukan dideklarasikan sekali
dan dirujuk. Dua hal berbeda dapat terjadi dan perlu dibedakan:
- Deklarasi berulang untuk entitas yang benar-benar sama. Menurut
spesifikasi JSON-LD, “the
properties of a node in a graph may be spread among different node objects within
a document. When that happens, the keys of the different node objects need to be
merged to create the properties of the resulting node.” (terjemahan) “Properti
sebuah node dalam graph dapat tersebar di beberapa objek node dalam satu dokumen.
Dalam keadaan itu, kunci dari objek node yang berbeda perlu digabungkan untuk
membentuk properti node hasil.” Jadi, pengulangan
@idyang sama dengan data sama atau kompatibel bukan kegagalan parsing; pemroses akan menggabungkannya. Namun, itu tetap bukan praktik yang baik. Nesting justru dibuat untuk mencegahnya. Markup menjadi bengkak dan berubah menjadi perangkap pemeliharaan: perbarui alamat atau logo di satu templat, lupakan empat puluh templat lain, lalu entitas Anda saling bertentangan di seluruh situs. Panduan Ahrefs dan Schema App sama-sama menyoroti risiko “mengubah satu dan melupakan yang lain” ini. - Satu
@iddigunakan untuk dua entitas yang sebenarnya berbeda. Inilah kerusakan yang nyata: dua objek node berbagi pengenal, tetapi menjelaskan hal yang bertentangan—nama, logo, atau@typeyang berbeda. Itu merupakan konflik semantik, bukan penggabungan yang aman. Gunakan@idberbeda untuk setiap entitas yang benar-benar terpisah.
Deklarasikan sekali dan rujuk di mana pun. Alasan pemeliharaan tetap berlaku,
meskipun pengulangan entitas yang sama secara teknis tidak merusak graph seperti
referensi yatim atau @id yang benar-benar bertentangan.
Pertanyaan yang belum terjawab: apakah @id diurai lintas halaman?
Inilah batas jujur yang membedakan jawaban nyata dari jawaban yang terdengar yakin
tetapi keliru. Dokumentasi Google tidak pernah menyatakan secara eksplisit apakah
referensi @id diurai lintas halaman. Contohnya, apakah Offer.seller pada
halaman produk dapat menunjuk ke node Organization yang hanya dideklarasikan di
beranda? Tidak ada dokumen Google Search Central yang menggunakan istilah
“cross-page” atau “across pages” dalam kaitannya dengan @id.
Satu sinyal terdekat justru mengarah pada halaman yang mandiri. Untuk konten
duplikat, Google merekomendasikan “placing the same structured data on all page
duplicates, not just on the canonical page” (terjemahan) “menempatkan data
terstruktur yang sama pada semua halaman duplikat, bukan hanya pada halaman
canonical”. Ini menyiratkan bahwa data terstruktur dievaluasi per halaman, bukan
diambil dari tempat lain. Saya juga tidak dapat memverifikasi pernyataan resmi dari
perwakilan Google atau Bing bernama—Mueller, Illyes, atau Splitt—yang secara khusus
menjawab pertanyaan @id lintas halaman. Bing memiliki
validasi JSON-LD di Webmaster Tools,
tetapi tidak menerbitkan panduan khusus @id atau @graph. Itu adalah celah
dokumentasi yang nyata, bukan posisi yang akan saya karang untuk mereka.
Karena itu, per Juli 2026, perlakukan pernyataan “Google mengikuti tautan @id
lintas halaman” sebagai inferensi industri, bukan perilaku yang dikonfirmasi.
Pilihan aman—yang secara independen digunakan atau disarankan oleh Yoast, Momentic,
dan Schema App—adalah: pertahankan nilai @id yang konsisten untuk entitas yang
sama di mana pun, tetapi tetap keluarkan graph entitas lengkap pada setiap halaman
yang memerlukannya. Jangan berasumsi Google akan mengambil entitas yang dirujuk
dari URL lain. Pilihan produksi Yoast persis demikian: mereka mengeluarkan graph
lengkap pada setiap halaman, bukan mengandalkan penguraian lintas halaman.
Cara memvalidasi nested schema
Gunakan dua alat:
- Rich Results Test — dalam
pengujian praktisi per Juli 2026, alat ini mengurai array
@graphdan menyelesaikan referensi@iddi dalam dokumen yang diuji. Jika entitas A merujuk B melalui@iddan B dideklarasikan dalam graph yang sama, keduanya tampil terhubung. Jika@idyang dirujuk tidak pernah dideklarasikan dalam markup yang diuji, alat ini tetap mengurai item yang dideklarasikan secara terpisah tanpa kesalahan, tetapi tidak dapat menampilkan hubungannya. Google tidak mendokumentasikan perilaku UI ini secara eksplisit, jadi perlakukan sebagai perilaku alat yang diamati dan dapat direproduksi, bukan spesifikasi resmi. Periksa kembali jika UI alat berubah. Inilah alasan referensi yatim dapat lolos: tidak ada kesalahan, hanya hubungan yang hilang. - Schema Markup Validator — validator kosakata milik schema.org, yang tidak terlalu terikat pada jenis rich result yang didukung Google.
Uji halaman hasil render, bukan hanya sumber templat. Jika JSON-LD disisipkan melalui JavaScript, pastikan markup benar-benar tersedia. Google mendokumentasikan pembacaan JSON-LD yang disisipkan secara dinamis oleh JavaScript, tetapi hal itu khusus untuk Google. Perilaku eksekusi JavaScript berbeda menurut crawler dan produk; tidak ada aturan umum bahwa setiap crawler AI merender JS dengan cara yang sama, atau merendernya sama sekali. Menyertakan JSON-LD dalam HTML awal lebih konservatif daripada mengasumsikan kode akan dieksekusi. Ini berkaitan dengan markup schema untuk AI.
Mitos yang perlu dihentikan
- “
@idharus berupa URL nyata, aktif, dan dapat diambil.” Tidak. Menurut konvensi, nilainya adalah URL canonical ditambah fragmen, tetapi fungsinya ialah identifikasi, bukan pengambilan. Fragmen tidak harus memiliki halaman tersendiri. - “
@idyang sama pada halaman berbeda otomatis menggabungkan entitas itu di indeks Google, seperti tag canonical mengonsolidasikan halaman.” Tidak pernah dikonfirmasi dalam dokumentasi Google.@idyang konsisten adalah praktik rapi, bukan mekanisme konsolidasi lintas halaman yang terbukti. - “Anda wajib menggunakan
@graph; blok skrip terpisah itu salah.” Keliru. Google memahami keduanya.@graphadalah pilihan pemeliharaan. - “Semakin banyak nesting, semakin baik pemahaman entitas.” Hanya jika entitas
benar-benar berkaitan. Menaruh item yang tidak berkaitan—contoh Schema App adalah
Eventyang tidak berkaitan di bawahRecipe—tidak membantu dan dapat mengaburkan sinyal. - “Struktur
@idatau@graphadalah faktor peringkat atau rich result.” Tidak. Nilainya adalah disambiguasi dan pengurangan duplikasi, sejalan dengan fakta bahwa schema bukan faktor peringkat. - “
@idyang tidak dideklarasikan tidak berbahaya; mesin akan mengabaikannya.” Itulah kegagalan referensi yatim. Hubungan yang dimaksud tidak pernah terbentuk, sementara alat sering tidak menampilkan kesalahan sehingga masalah lolos tanpa disadari.
Posisi artikel ini dalam topik
Artikel ini adalah lapisan panduan praktis di bawah
hub data terstruktur, sekaligus pendamping
yang lebih mendalam bagi markup schema,
yang memperkenalkan @id dan @graph, serta JSON-LD,
yang membahas formatnya. Artikel ini memakai cara berpikir tentang pemahaman entitas
yang sama seperti entitas dan
markup schema untuk AI. Graph yang
dibangun dengan baik adalah infrastruktur entitas, baik konsumennya Knowledge Graph
Google maupun LLM. Seluruh subklaster ini berada dalam
SEO on-page.
Ringkasan AI
Ringkasan padat dari versi Advanced:
- Pengertiannya. Nesting menghubungkan entitas JSON-LD agar tidak menjadi blok
terpisah.
@idadalah URI stabil dan unik—biasanya URL canonical ditambah#fragment—yang menamai entitas agar entitas lain dapat merujuknya tanpa mendeklarasikan ulang.@graphadalah kata kunci yang menampung entitas terhubung dalam satu blok<script>, dengan referensi silang melalui@id. @id≠url, dan@idtidak harus dapat diambil. Menurut spesifikasi JSON-LD,@idmengidentifikasi node, bukan memastikan URL dapat diambil;urlmenjelaskan halaman nyata.@idpeka huruf besar-kecil.- Posisi yang dikonfirmasi Google: Google memahami nesting dan item individual,
serta menggunakan
@iduntuk mengetahui bahwa dua item tertaut. Google tidak mendokumentasikan penguraian@idlintas halaman. Perlakukan klaim bahwa Google mengikutinya sebagai inferensi industri. Sinyal terdekat—mengulang schema yang sama pada semua halaman duplikat—mengarah pada evaluasi per halaman yang mandiri. - Dua pola:
WebSite → WebPage → Article → Authoruntuk penerbitan, denganauthordanpublishermelalui@id; sertaProduct → Offer → Organization/selleruntuk ecommerce, dengan satu node penjual dirujuk dari setiap produk. - Tiga mode kegagalan: nilai
@idyang tidak konsisten atau tidak unik; referensi yatim, yaitu@iddirujuk tetapi tidak pernah dideklarasikan—tidak lengkap secara semantik, bukan JSON-LD yang tidak valid, dan sering tidak memicu kesalahan validator; serta deklarasi lengkap duplikat. Pengulangan entitas yang sama digabung menurut aturan node JSON-LD, tetapi penggunaan satu@iduntuk entitas berbeda menimbulkan konflik nyata. - Pilihan aman:
@idyang konsisten di mana pun serta graph entitas lengkap pada setiap halaman yang memerlukannya. Jangan mengandalkan pengambilan lintas halaman. Yoast, Momentic, dan Schema App mengarah pada pilihan yang sama. - Validasi dengan Rich Results Test, yang menyelesaikan
@iddi dalam dokumen, serta validator schema.org. Uji halaman hasil render. - Bukan pengungkit peringkat atau rich result dengan sendirinya. Fungsinya ialah pemahaman entitas melalui disambiguasi dan deduplikasi.
Dokumentasi resmi
Dokumentasi dan spesifikasi sumber primer.
- Pedoman Umum Data Terstruktur — satu-satunya halaman tempat Google mendokumentasikan nesting dibanding item individual serta prinsip penautan
@id(terakhir diperbarui 10 Juli 2026 dan dikonfirmasi langsung). Halaman ini juga memuat panduan untuk menempatkan data terstruktur yang sama pada semua halaman duplikat. - Pengantar Cara Kerja Markup Data Terstruktur — konteks format serta aturan kelengkapan dan akurasi.
- Rich Results Test — mengurai
@graphdan menyelesaikan referensi@iddalam dokumen yang diuji.
schema.org / W3C
- Rekomendasi W3C JSON-LD 1.1 — spesifikasi yang mendefinisikan
@id,@graph, objek node, dan objek graph. - Schema Markup Validator — validator kosakata schema.org yang tidak terlalu terikat pada daftar dukungan rich result Google.
Bing / Microsoft
- Memperkenalkan Dukungan JSON-LD di Bing Webmaster Tools — Markup Validator Bing mendukung JSON-LD. Perhatikan bahwa Bing tidak menerbitkan panduan khusus tentang mekanisme nesting
@idatau@graph.
Kutipan dari sumber
Pernyataan resmi dari Google. Setiap tautan langsung menuju bagian yang dikutip.
Google — nesting dibanding item individual
- “Google Search understands multiple items on a page, whether you nest the items or specify each item individually.” (terjemahan) “Google Penelusuran memahami beberapa item pada sebuah halaman, baik Anda menempatkan item tersebut secara nested maupun menentukan setiap item secara terpisah.” — Google Search Central, Pedoman Umum Data Terstruktur. Buka kutipan
Google — alasan @id digunakan (prinsip penautan)
“…use
@idin both the recipe and the video items to specify that the video is about the recipe on the page. If you didn’t link the items together, Google Search may not know that it can show the video as a Recipe rich result.” (terjemahan) “Gunakan@idpada item resep dan video untuk menentukan bahwa video tersebut membahas resep pada halaman. Jika item tidak ditautkan, Google Penelusuran mungkin tidak mengetahui bahwa video itu dapat ditampilkan sebagai rich result Resep.” — halaman yang sama. Buka kutipan
Google — perlakukan setiap halaman sebagai unit mandiri (sinyal terdekat tentang lintas halaman)
- “If you have duplicate pages for the same content, we recommend placing the same structured data on all page duplicates, not just on the canonical page.” (terjemahan) “Jika Anda memiliki halaman duplikat untuk konten yang sama, kami menyarankan agar data terstruktur yang sama ditempatkan pada semua halaman duplikat, bukan hanya pada halaman canonical.” — halaman yang sama. Buka kutipan
Tentang hal yang tidak tercatat secara resmi
Dokumentasi Google tidak pernah mengonfirmasi secara eksplisit apakah referensi
@id diurai lintas halaman. Saya juga tidak dapat memverifikasi pernyataan resmi
dari perwakilan Google atau Bing bernama yang menjawab pertanyaan tersebut. Ketika
artikel ini menyatakan “the safe default is consistent @id plus the full graph
per page,” (terjemahan) “pilihan aman adalah @id yang konsisten ditambah graph
lengkap per halaman”, itu adalah konsensus praktisi—Yoast, Momentic, dan
Schema App mengarah pada pilihan yang sama—bukan kutipan Google. Hal tersebut diberi
label jelas di tab Advanced, bukan disamarkan sebagai pernyataan resmi.
@id atau @graph bukan faktor
peringkat mengikuti posisi Google yang lebih luas dan berulang kali disampaikan
bahwa data terstruktur bukan sinyal peringkat langsung; itu bukan kutipan verbatim
yang khusus membahas @id. Nested schema — lembar ringkas
@id dibanding url dibanding @graph
| Hal | Pengertian | Haruskah mengarah ke halaman yang dapat diambil? |
|---|---|---|
@id | Pengenal unik untuk entitas (node dalam graph) | Tidak — untuk identifikasi, bukan pengambilan |
url | Halaman nyata entitas yang dapat diambil | Ya — ini URL sebenarnya |
@graph | Array yang menyatukan entitas terhubung dalam satu blok <script> | Tidak berlaku — ini kata kunci wadah |
Konvensi @id
- URL absolut + fragmen deskriptif:
https://example.com/#organization. - Peka huruf besar-kecil —
#Author≠#author. Pilih satu dan jangan menyimpang. - Entitas yang sama →
@idyang sama di mana pun. Entitas berbeda →@idberbeda. - Jangan gunakan string arbitrer polos seperti
"id1".
Dua pola
| Pola | Rantai | Referensi melalui @id |
|---|---|---|
| Penerbitan | WebSite → WebPage → Article | author → Person, publisher → Organization |
| Ecommerce | Product → Offer | seller → Organization |
Tiga hal yang perlu diwaspadai
| Kesalahan | Dampak |
|---|---|
@id tidak konsisten atau tidak unik | Entitas yang sama terlihat sebagai dua entitas, atau dua entitas melebur menjadi satu |
| Referensi yatim | @id dirujuk tetapi tidak pernah dideklarasikan → hubungan gagal tanpa peringatan (JSON-LD valid, tetapi tidak lengkap secara semantik; sering tidak memicu kesalahan validator) |
| Deklarasi lengkap duplikat | Markup bengkak + perangkap pemeliharaan (pengulangan entitas yang sama digabung menurut aturan JSON-LD; konflik nyata terjadi ketika satu @id digunakan untuk entitas berbeda) |
Fakta singkat
- Google mengonfirmasi bahwa nesting dan item individual sama-sama berfungsi;
@graphbersifat opsional. - Google tidak mendokumentasikan penguraian
@idlintas halaman; asumsikan evaluasi per halaman. - Pilihan aman:
@idkonsisten + graph lengkap pada setiap halaman yang memerlukannya. - Bukan pengungkit peringkat atau rich result; fungsinya adalah pemahaman entitas.
- Validasi dengan Rich Results Test, yang menyelesaikan
@iddalam dokumen, serta validator schema.org. Uji halaman hasil render.
Anti-pola nesting
Cara-cara spesifik nested schema gagal, beserta perbaikan untuk masing-masing.
Konvensi @id menyimpang antar-templat
Templat blog mengeluarkan #organization, templat produk mengeluarkan #org, dan
bagian hasil migrasi mengeluarkan #company. Tiga string untuk satu entitas nyata
kini terlihat sebagai tiga entitas. Perbaikan: tetapkan satu konvensi tertulis dan
terapkan secara mekanis, idealnya dihasilkan dari satu konfigurasi seperti yang
dilakukan plugin.
Merujuk entitas yang tidak pernah dideklarasikan (yatim)
"author": {"@id": "#person-jane"} digunakan tanpa node #person-jane dalam
dokumen. Tautan tidak mengarah ke apa pun dan hubungan gagal. Rich Results Test
biasanya tidak menampilkan kesalahan; alat itu hanya tidak menunjukkan hubungannya.
Perbaikan: setiap @id yang dirujuk harus dideklarasikan sekali dalam markup
yang diuji, lengkap dengan @type.
Mendeklarasikan ulang entitas lengkap pada setiap halaman
Seluruh Organization—nama, logo, dan setiap sameAs—disalin secara inline ke
setiap artikel dan produk. Ini dapat berfungsi, tetapi menjadi perangkap
pemeliharaan: ubah logo di satu tempat, lupakan empat puluh halaman, lalu entitas
saling bertentangan. Perbaikan: deklarasikan sekali dan rujuk melalui @id di
tempat lain.
Menempatkan entitas tidak berkaitan dalam nesting untuk “menambah schema”
Recipe, Event yang tidak terkait, dan JobPosting disatukan dalam satu
graph karena dianggap bahwa semakin banyak markup semakin baik. Hubungan harus
nyata; berada di lokasi yang sama bukanlah hubungan. Perbaikan: hubungkan hanya
entitas yang benar-benar berkaitan.
Mengasumsikan penguraian @id lintas halaman
Organization hanya dideklarasikan di beranda, lalu dirujuk melalui @id dari
halaman produk dengan harapan Google akan mengambilnya. Dokumentasi Google tidak
mengonfirmasi cara ini berfungsi. Perbaikan: pertahankan @id yang konsisten,
tetapi sertakan entitas lengkap pada setiap halaman yang merujuknya.
@id yang sebenarnya dimaksudkan sebagai url, atau sebaliknya
@id digunakan ketika Anda memerlukan referensi ke halaman yang dapat diambil,
atau url diharapkan dapat menautkan node graph. Keduanya memiliki tugas berbeda.
Perbaikan: gunakan @id untuk identitas graph dan url untuk halaman nyata.
Sebuah entitas dapat memiliki keduanya.
Ketidakkonsistenan huruf besar-kecil dan garis miring akhir
Satu halaman memakai https://example.com/#Org, halaman lain memakai
https://example.com/#org, atau .../post/#article digunakan berdampingan
dengan .../post#article. Semuanya dianggap berbeda. Perbaikan: normalkan secara
persis—huruf besar-kecil, garis miring, protokol, dan host.
Contoh lengkap
Titik awal siap salin untuk dua pola serta satu referensi yang benar.
Penerbitan: WebSite → WebPage → Article → Author
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://example.com/#organization",
"name": "Example Media",
"url": "https://example.com/",
"logo": "https://example.com/logo.png",
"sameAs": ["https://www.linkedin.com/company/example-media/"]
},
{
"@type": "WebSite",
"@id": "https://example.com/#website",
"url": "https://example.com/",
"name": "Example Media",
"publisher": { "@id": "https://example.com/#organization" }
},
{
"@type": "WebPage",
"@id": "https://example.com/post/#webpage",
"url": "https://example.com/post/",
"isPartOf": { "@id": "https://example.com/#website" }
},
{
"@type": "Person",
"@id": "https://example.com/team/jane-doe/#person",
"name": "Jane Doe",
"url": "https://example.com/team/jane-doe/"
},
{
"@type": "Article",
"@id": "https://example.com/post/#article",
"mainEntityOfPage": { "@id": "https://example.com/post/#webpage" },
"headline": "Example headline",
"author": { "@id": "https://example.com/team/jane-doe/#person" },
"publisher": { "@id": "https://example.com/#organization" }
}
]
}Ecommerce: Product → Offer → Organization (penjual)
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://shop.example.com/#organization",
"name": "Example Shop",
"url": "https://shop.example.com/"
},
{
"@type": "Product",
"@id": "https://shop.example.com/widget/#product",
"name": "Deluxe Widget",
"offers": {
"@type": "Offer",
"price": "29.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"seller": { "@id": "https://shop.example.com/#organization" }
}
}
]
}Referensi yang benar dibanding referensi yatim
Benar—node yang dirujuk dideklarasikan dalam graph yang sama:
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Person", "@id": "https://example.com/#jane", "name": "Jane Doe" },
{ "@type": "Article", "author": { "@id": "https://example.com/#jane" } }
]
}Rusak (yatim)—#jane dirujuk tetapi tidak pernah dideklarasikan, sehingga author
tidak mengarah ke apa pun:
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Article", "author": { "@id": "https://example.com/#jane" } }
]
} Audit nested schema — checklist
Langkah pemeriksaan untuk memastikan graph terhubung, konsisten, dan mandiri:
- Satu konvensi
@id, didokumentasikan dan diterapkan di mana pun, misalnya{base}/#organization,{page}/#webpage, dan{profile}/#person. - Entitas yang sama →
@idyang sama pada setiap halaman dan templat, tanpa penyimpangan#orgdibanding#organization; huruf besar-kecil dan garis miring akhir sudah dinormalkan. - Tidak ada referensi yatim — setiap
@idyang dirujuk benar-benar dideklarasikan dalam dokumen yang diuji, lengkap dengan@typedan properti. - Tidak ada deklarasi lengkap duplikat — entitas bersama seperti
OrganizationdanPersondideklarasikan sekali lalu dirujuk melalui@id, bukan ditempel ulang secara inline. -
@iddanurldigunakan dengan benar —@idmengidentifikasi node;urlmenunjuk ke halaman nyata; sebuah entitas dapat memiliki keduanya. - Hanya entitas yang benar-benar berkaitan yang dihubungkan — tidak ada item tidak terkait yang disatukan sekadar untuk menambah markup.
- Graph lengkap pada setiap halaman yang memerlukannya — jangan mengandalkan
penguraian
@idlintas halaman; sertakan entitas yang dirujuk per halaman. - Divalidasi dalam Rich Results Test, dengan hubungan tampil sebagai tautan, serta validator schema.org.
- Diuji pada halaman hasil render, bukan hanya sumber templat. Pastikan JSON-LD yang disisipkan JS benar-benar tersedia; gunakan render sisi server untuk crawler AI.
- Markup konsisten pada halaman canonical dan duplikat — data terstruktur yang sama tersedia pada semua versi.
Uji pemahaman Anda: Nesting Markup Schema
Lima pertanyaan singkat tentang @id, @graph, dan kesalahan yang merusak
graph nested. Pilih jawaban untuk setiap pertanyaan, lalu periksa hasilnya.
Referensi yang layak dibaca
Tulisan saya yang terkait
- Data Terstruktur: Pengertian dan Cara Menggunakannya — panduan Ahrefs saya tentang jenis schema, metode implementasi, alat validasi, dan risiko disambiguasi entitas
sameAs, yaitu tugas pemahaman entitas yang juga dilayani@iddan@graph. - Panduan Pemula untuk SEO Teknis — posisi data terstruktur dalam gambaran teknis yang lebih luas.
Presentasi saya
- Cara Kerja Penelusuran (SlideShare) — penjelasan saya tentang crawling, rendering, indexing, dan ranking sebagai konteks bagi data terstruktur. Pernyataan pembatas saya tetap berlaku: “This is my understanding of systems… not going to be 100% complete or accurate.” (terjemahan) “Ini adalah pemahaman saya tentang sistem… dan tidak akan 100% lengkap atau akurat.”
Resmi
- Pedoman Umum Data Terstruktur Google — nesting dibanding item individual serta prinsip penautan
@id. - Rekomendasi W3C JSON-LD 1.1 — spesifikasi yang mendefinisikan
@id,@graph, dan objek node atau graph. - Rich Results Test dan validator schema.org — dua alat untuk memeriksa graph nested.
Dari industri
- Kami Melacak 1 885 Halaman yang Menambahkan Schema. Sitasi AI Nyaris Tidak Berubah. (Louise Linehan & Xibeijia Guan, Ahrefs) — studi Ahrefs tentang schema dan sitasi AI yang membantu menjaga ekspektasi: markup yang rapi, termasuk nesting, merupakan infrastruktur entitas, bukan jalan pintas untuk mendapat sitasi.
- Pengenal Node: Dari Data Terstruktur ke Linked Data (Patrick Hathaway, Sitebulb) — penjelasan paling jelas tentang pengenal node, dengan contoh
@idberbeda dan peringatan tentang kepekaan huruf besar-kecil. - Apa Itu @id dalam Data Terstruktur? (Mark van Berkel, Schema App) — mengutip definisi spesifikasi JSON-LD dan memakai kerangka “rumah entitas”, yaitu halaman tempat definisi lengkap entitas berada.
- Apa Itu Nesting dalam Markup Schema? (Jasmine Drudge-Willson, Schema App) — nesting untuk hierarki dibanding kemudahan, serta alasan nesting entitas yang tidak berkaitan merupakan kesalahan.
- Schema: Teknologi dan Pendekatan (dokumentasi pengembang Yoast) — arsitektur
@graphproduksi, templat@id, serta pilihan terbuka untuk mengeluarkan graph lengkap pada setiap halaman alih-alih mengandalkan penguraian lintas halaman. - Menggunakan @id dalam Markup Schema.org untuk SEO, LLM, dan Knowledge Graph (Tyler Einberger, Momentic) — katalog ringkas kesalahan
@idumum, termasuk referensi yatim, ID tidak stabil, dan nilai tidak konsisten.
Log perubahan
Diperbarui 21 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 21 Jul 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 18 Jul 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.