Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: The PGN specification, and attempts to change it

Author: Adam Oellermann

Date: 03:35:53 09/11/01

Go up one level in this thread


On September 10, 2001 at 20:10:59, Dann Corbit wrote:

>On September 10, 2001 at 19:55:18, Bob Green wrote:
>
>>On September 10, 2001 at 13:37:48, Dann Corbit wrote:
>>
>>>On September 10, 2001 at 13:19:37, Bruce Moreland wrote:
>>>
>>>>The PGN standard seems to be owned by Steven J. Edwards.  The standard is
>>>>extremely important, and he hasn't made any changes to it for the past several
>>>>years, so there is now an attempt to declare him unimportant and change the
>>>>spec.
>>>>
>>>>A post detailing these changes was submitted to r.g.c.c. a few days ago.  The
>>>>changes are being authored by:
>>>>
>>>>Alan Cowderoy (Palamede), Ben Bulsink (DGT Projects), Andrew
>>>>Templeton(Palamede/Palview), Eric Bentzen (Enpassant.dk, Palamede), Mathias
>>>>Feist
>>>>(Chessbase), Victor Zakharov (Chess Assistant).
>>>>
>><big snip/>
>>>>
>>>>Is this the way the PGN standard should go?
>>>
>>>I have not read the posts on r.g.c.c yet.  The above change does not seem to
>>>hold much value, that I can see.  I suggest the following:
>>>1.  Attempt to contact SJE, and propose changes.
>>>2.  Try to work with him instead of ignoring him.
>>>
>>>I doubt if you can simply toss him aside and create a new PGN standard.  I am
>>>speaking of copyright priviledge.  After all, he is the author of the document.
>>>
>>>On the other hand, a new standard could be created from scratch.
>>
>>First off, I'm an XML bigot.  But that doesn't necessarily make the following
>>wrong :)
>>
>>I think PGN could be improved and made **much** more flexible by creating a new
>>standard from scratch using XML Schema.  Converting a text-based XML document to
>> information usable in your program (viewer, game engine, whatever) is very
>>easy; there are XML parsers in every language known to (pick the diety of your
>>choice.)
>>
>>XML obviates the issue above - you don't "break" the existing XML standard when
>>you extend it to include new features - the "X" in XML is for eXtensible after
>>all.
>>
>>For those of you unfamiliar with XML your could take the simple example from the
>>beginning of the PGN standard found at:
>>
>>http://www.schachprobleme.de/chessml/faq/pgn/
>>
>>which is:
>>
>>[Event "F/S Return Match"]
>>[Site "Belgrade, Serbia JUG"]
>>[Date "1992.11.04"]
>>[Round "29"]
>>[White "Fischer, Robert J."]
>>[Black "Spassky, Boris V."]
>>[Result "1/2-1/2"]
>>1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6 8. c3
>>O-O 9. h3 Nb8 10. d4 Nbd7 11. c4 c6 12. cxb5 axb5 13. Nc3 Bb7 14. Bg5 b4 15.
>>Nb1 h6 16. Bh4 c5 17. dxe5 Nxe4 18. Bxe7 Qxe7 19. exd6 Qf6 20. Nbd2 Nxd6 21.
>>Nc4 Nxc4 22. Bxc4 Nb6 23. Ne5 Rae8 24. Bxf7+ Rxf7 25. Nxf7 Rxe1+ 26. Qxe1 Kxf7
>>27. Qe3 Qg5 28. Qxg5 hxg5 29. b3 Ke6 30. a3 Kd6 31. axb4 cxb4 32. Ra5 Nd5 33.
>>f3 Bc8 34. Kf2 Bf5 35. Ra7 g6 36. Ra6+ Kc5 37. Ke1 Nf4 38. g3 Nxh3 39. Kd2 Kb5
>>40. Rd6 Kc5 41. Ra6 Nf2 42. g4 Bd3 43. Re6 1/2-1/2
>>
>>and convert it to XML after first defining the schema by which the XML document
>>should follow.  However, the following XML document should be readable and
>>understandable by most (including every computer with an XML parser!):
>>
>><game>
>>   <event>
>>      <evntName>F/S Return Match</evntName>
>>      <round>29</round>
>>   </event>
>>   <date>1992.11.04</date>
>>   <site>
>>      <city>Belgrade</city>
>>      <country>Serbia JUG</country>
>>   </site>
>>   <white>
>>      <firstName>Robert</firstName>
>>      <middleName>J</middleName>
>>      <lastName>Fischer</lastName>
>>   </white>
>>   <black>
>>      <firstName>Boris</firstName>
>>      <middleName>V</middleName>
>>      <lastName>Spassky</lastName>
>>   </black>
>>   <result>1/2-1/2</result>
>>   <turn>1
>>      <Wmove>e4</Wmove>
>>      <Bmove>e5</Bmove>
>>   </turn>
>>   <turn>2
>>      <Wmove>Nf3</Wmove>
>>      <Bmove>Nc6</Bmove>
>>   </turn>
>>       ...
>></game>
>>
>>Yep, this standard would be a **whole** lot more chatty...that is the biggest
>>downside of XML.  But the fact that any ol' computer can read it w/o writing a
>>bunch of code is the upside and humans can still follow it pretty well.
>>
>>The existing PGN notation schema (i.e. the rules to follow when writing a PGN
>>document) could be converted to an XML Schema fairly simply - let's call this
>>new XML language PGN-XML.  Since it is a new language we could throw in some
>>bones to non-chess games as well (no problem since XML is intrinsically
>>extensible.)  An add some tags for clock control...optional naturally.
>>
>>Then some sharp cats could write a PGN to PGN-XML converter.
>>
>>In any event, this is a radical approach to a simple extention to the PGN
>>standard.  Does anyone besides me see some merit in this?
>
>Instead of XML, why not make a SQL definition?
>
>SQL->XML conversion already exists, so the XML stuff would be free.
>and XML is *way* too chatty.

Any LZ type compression shrinks XML waaay down. So why not have an XML standard
with an optional binary version which is just a compressed version of the XML -
using something like zlib which is pretty much universally available?

- Adam



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.