Time to change PGN as protocol interchange

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

lukasmonk
Posts: 45
Joined: Sun Feb 07, 2010 7:35 pm
Location: Spain

Time to change PGN as protocol interchange

Post by lukasmonk »

I think it's time to change the way in which the chess games are broadcast.

Time to change the protocol, the old standard PGN (valid visually), to other more accurate and more flexible for exchange between programs. A public standard way to interchange chess games.

One idea might be to use JSON or similar(I don´t know much about it), with some fixed fields set as standard, and the ability to add other non-standard fields, but whose information is not lost when using different GUIs.

Some idea about this ?

Cheers
Lucas


Perhaps this is an old topic, but I have not seen posts relating this.
ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: Time to change PGN as protocol interchange

Post by ZirconiumX »

lukasmonk wrote:I think it's time to change the way in which the chess games are broadcast.

Time to change the protocol, the old standard PGN (valid visually), to other more accurate and more flexible for exchange between programs. A public standard way to interchange chess games.

One idea might be to use JSON or similar(I don´t know much about it), with some fixed fields set as standard, and the ability to add other non-standard fields, but whose information is not lost when using different GUIs.

Some idea about this ?

Cheers
Lucas


Perhaps this is an old topic, but I have not seen posts relating this.
What exactly is the problem with PGN?

PGN is flexible (you can add fields all you like), and accurate (it records the game information)

Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Time to change PGN as protocol interchange

Post by hgm »

PGN is awful, because it uses SAN for the moves. To interpret SAN requires knowledge of the game rules. For broadcasting games in WinBoard I already switched to a different format, based on long-algebraic notation.
Edmund
Posts: 670
Joined: Mon Dec 03, 2007 3:01 pm
Location: Barcelona, Spain

Re: Time to change PGN as protocol interchange

Post by Edmund »

PGNs are built for human readers and not for computer processing. In my opinion the most annoying aspects are:
  • - SAN are expensive to parse
    - comments not well defined (e.g. for engine output)
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Time to change PGN as protocol interchange

Post by michiguel »

Edmund wrote:PGNs are built for human readers and not for computer processing. In my opinion the most annoying aspects are:
  • - SAN are expensive to parse
    - comments not well defined (e.g. for engine output)
It is for both, humans and computers, and their interaction. It is as good as it gets for what it was designed for, a common and universal language. Of course, you have to make concessions to support carbon and silicon brains. It is not supposed to be the fastest, it is supposed to be understandable and easily used with text tools.

Miguel
lukasmonk
Posts: 45
Joined: Sun Feb 07, 2010 7:35 pm
Location: Spain

Re: Time to change PGN as protocol interchange

Post by lukasmonk »

From a GUI point of view, (english) PGN is not enough, if you want to add an image to a move, or a link,or a video,or a doc..., the kind of information that is common nowadays.

ChessBase has its own solution: cbv files, but this is privative, IMHO a standard public protocol other than PGN is necessary, to do more easy to transmit all this information between GUIs.
syzygy
Posts: 5566
Joined: Tue Feb 28, 2012 11:56 pm

Re: Time to change PGN as protocol interchange

Post by syzygy »

hgm wrote:PGN is awful, because it uses SAN for the moves. To interpret SAN requires knowledge of the game rules. For broadcasting games in WinBoard I already switched to a different format, based on long-algebraic notation.
The rules of chess are known to all.

For other games other formats might be more suitable.
jdart
Posts: 4367
Joined: Fri Mar 10, 2006 5:23 am
Location: http://www.arasanchess.org

Re: Time to change PGN as protocol interchange

Post by jdart »

Computers only get faster. Processing a million games typically takes a few minutes, for me. So the processing overhead is not much, IMO.

It is true there are some gray areas not really standardized. Chesbase uses [%eval] and [%emt] in comments for eval and search time (and is annoying about re-writing comments with numeric values into this format). Winboard writes comments like {-0.22/28 1.06}. So yeah, that is a legitimate complaint but it could be solved if tool authors would agree on something.

--Jon
lukasmonk
Posts: 45
Joined: Sun Feb 07, 2010 7:35 pm
Location: Spain

Re: Time to change PGN as protocol interchange

Post by lukasmonk »

I think it is necessary to distinguish between two aspects of the subject:
1.- the way that games are showed to humans, where I don´t know an alternative to PGN.
2.- and the way the information is saved in the machine, where each program uses its own solutions, where [%eval] in Chessbase is only a patch, as this information is something more/different than a simple comment.I think it is common sense that sooner or later will be improved in this respect.
User avatar
hgm
Posts: 27808
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Time to change PGN as protocol interchange

Post by hgm »

syzygy wrote:
hgm wrote:PGN is awful, because it uses SAN for the moves. To interpret SAN requires knowledge of the game rules. For broadcasting games in WinBoard I already switched to a different format, based on long-algebraic notation.
The rules of chess are known to all.
Not to i386.
Not to C++.
Not to JavaScript.