JSON-LD naar uitgebreide vorm — Numio
Breidt een JSON-LD-document uit met jsonld.js: de @context wordt toegepast en verwijderd, termen worden volledige IRI's en elke waarde wordt verpakt in een array van @value- of @id-objecten. Sleutels die niet aan een IRI zijn toegewezen, worden verwijderd.
Controleren naar welke IRI's uw schema.org of aangepaste @context-termen daadwerkelijk verwijzen.
Wanneer gebruik je dit?
- Controleren naar welke IRI's uw schema.org of aangepaste @context-termen daadwerkelijk verwijzen.
- Foutopsporing in gestructureerde gegevens waarbij een eigenschap stilletjes verdwijnt omdat deze niet in de context is gedefinieerd.
Hoe werkt het
- Plak een JSON-LD-document met zijn @context in de JSON-LD-editor.
- Lees de uitgebreide array: elk knooppunt vermeldt de volledige eigenschap-IRI's met waarden in arrays.
- Vergelijk met uw invoer; elke eigenschap die in de uitvoer ontbrak, werd niet in kaart gebracht door de context.
JSON-LD
{
"@context": {
"name": "http://schema.org/name",
"knows": {"@id": "http://schema.org/knows", "@type": "@id"},
"homepage": {"@id": "http://schema.org/url", "@type": "@id"}
},
"@id": "http://example.org/jane",
"@type": "http://schema.org/Person",
"name": "Jane Doe",
"homepage": "http://janedoe.example",
"knows": "http://example.org/john"
}Uitgebreide JSON-LD
[
{
"@id": "http://example.org/jane",
"@type": [
"http://schema.org/Person"
],
"http://schema.org/url": [
{
"@id": "http://janedoe.example"
}
],
"http://schema.org/knows": [
{
"@id": "http://example.org/john"
}
],
"http://schema.org/name": [
{
"@value": "Jane Doe"
}
]
}
]Details en beperkingen
De uitbreiding wordt in uw browser uitgevoerd met het jsonld-pakket. Een externe @context zoals https://schema.org/ (gebruikt door het standaardvoorbeeld) wordt door uw browser gedownload; als dat niet lukt (offline, CORS), toont de pagina een fout bij het benoemen van de URL.
"@type": "@id" in een termdefinitie verandert een tekenreekswaarde in een {"@id": ...} verwijzing in plaats van een letterlijke waarde.
De uitvoer is altijd een array op het hoogste niveau, zelfs voor één knooppunt.
FAQ
Waarom zijn sommige van mijn eigendommen verdwenen?
Uitbreiding verwijdert sleutels die niet zijn gedefinieerd in de @context en geen absolute IRI's zijn. Als bijvoorbeeld alleen de naam is toegewezen, wordt een bijnaamsleutel uit de uitvoer verwijderd.
Kan ik de schema.org-context gebruiken?
Ja. "@context": "https://schema.org/" werkt als uw browser het kan ophalen. Voor offline gebruik schrijft u de termdefinities inline zoals in het voorbeeld.
Waarom bevindt elke waarde zich in een array?
Uitgebreide vorm gebruikt altijd arrays voor eigenschapswaarden en @type, zodat processors enkele en meerdere waarden op dezelfde manier kunnen verwerken.