xml

pgn heeft een aantal nadelen voor het automatisch publiceren van partijen: het is bijvoorbeeld lastig als je eerst wat zijvarianten wil tonen, voordat je verder gaat met de hoofdvariant. Ook het doen van meerdere witte zetten of meerdere zwarte zetten achter elkaar is lastig. Ook illegale zetten ter illustratie (het paard van c3 moet naar d4) is lastig. Ik heb een idee voor een elegant xml formaat dat dit allemaal toestaat. Een fragment zou er zo uit kunnen zien (de zet e2-e4):


<variation main> <move white e2="" e4="wp" /></variation>

een aantal voordelen van deze notatie:

de volgorde van tonen is de volgorde in de xml. Je kunt met het attribuut ‘main’ aangeven wat de hoofdvariant is. De notatie is volkomen ondubbelzinnig. Je kunt de waarde van net zoveel velden veranderen als je wilt. Zo kun je bijvoorbeeld een zet doen waarbij je even alle stukken weghaalt om de pionnenstructuur te benadrukken. Je kunt expliciet aangeven of het een witte of een zwarte zet betreft.

Nog een opmerking over FEN: dit generaliseert niet naar Fisher Random Chess. In FEN heb je een veld waarmee je aangeeft wat de rokade mogelijkheden zijn. Bijvoorbeeld: KQkq betekent dat wit en zwart beide kanten nog op kunnen rokeren. Bij Fisher Random Chess is dit niet genoeg: als in de loop van de partij twee torens aan de rechterkant van de koning komen te staan, maar je kunt nog steeds naar rechts rokeren, dan rijst de vraag: met welke toren dan? Daarom zou er in een XML variant van FEN een attribuut als ‘castle=g1′ moeten staan. Dit zou aangeven dat er op g1 een toren staat die nog kan rokeren. Voor elke toren waarvoor dit geldt kan zo’n attribuut worden opgegeven.