Co to jest format pliku PGN?
.pgn (Portable Game Notation) to najpopularniejszy standard danych partii szachowych. Pliki .pgn przechowują ruchy partii szachowej wraz z datą meczu, lokalizacją, nazwą wydarzenia, rundą, wynikiem gry oraz nazwiskami graczy.
Struktura danych pliku .pgn
Dane nagłówka w pliku .pgn są formatowane przy użyciu par tagów w nawiasach kwadratowych. Obowiązkowy zestaw - Seven Tag Roster - obejmuje [Event], [Site], [Date], [Round], [White], [Black] oraz [Result]. Ruchy graczy następują w sekcji *movetext* przy użyciu standardowej notacji algebraicznej (SAN), z komentarzami w nawiasach klamrowych { } i adnotacjami takimi jak ! lub ?. Nie istnieje sygnatura binarna; pliki .pgn są identyfikowane przez otwierający tag [Event ".
Dane zapisane w formacie tekstowym
Pliki .pgn przechowują informacje w formacie czystego tekstu (ASCII), dzięki czemu mogą być łatwo odczytywane zarówno przez ludzi, jak i programy. W jednym pliku .pgn można połączyć wiele partii, co jest powszechne w przypadku ksiąg debiutowych i baz danych turniejowych. Powiązane formaty pozycji to .FEN dla pojedynczych ustawień na szachownicy oraz .EPD dla rozszerzonych opisów pozycji.
Powszechnie stosowany standard
Format .pgn jest powszechnie używany do przechowywania i udostępniania (również online) danych o meczach szachowych za pośrednictwem platform takich jak Lichess i Chess.com. Pliki .pgn mogą być wykorzystywane do analizy po meczu, śledzenia postępów gracza, trenowania silników oraz archiwizowania rekordów turniejowych.
Bezpieczeństwo
RYZYKO: LOWPGN to czysty tekst bez zawartości wykonywalnej, więc pliki te są z natury bezpieczne do otwarcia. Jedyne zastrzeżenia: źle sformatowany lub ogromny plik PGN może obciążyć słabo napisany parser. Jak zawsze, należy pobierać oprogramowanie szachowe z oficjalnych stron, a nie z przeładowanych reklamami portali „PGN viewer”. Format nie posiada możliwości tworzenia makr ani skryptów.
Szczegóły formatu
w pigułceProgramy otwierające pliki PGN
Szczegóły techniczne
specyfikacja| Typ MIME | application/x-chess-pgn |
| Kodowanie pliku | 7-bitowy czysty tekst ASCII |
| Sygnatura pliku | Brak binarnych magicznych bajtów; identyfikowany w praktyce przez otwierający tag w nawiasie [Event „...”] |
| Struktura pliku | Układ dwusekcyjny: pary tagów w nawiasach (nagłówek), po których następuje movetext (ruchy partii) |
| Obowiązkowe tagi nagłówka | Seven Tag Roster - [Event], [Site], [Date], [Round], [White], [Black], [Result] |
| Notacja ruchów | Standardowa Notacja Algebraiczna (SAN) |
| Glify adnotacji | Numeryczne Glify Adnotacji (NAGs) $1-$255; popularne skróty: !, ?, !!, ??, !?, ?! |
| Składnia komentarzy | Komentarze blokowe w nawiasach { }; komentarze liniowe po średniku ; (do końca linii) |
| Obsługa wariantów | Rekurencyjne Warianty Analizy (RAVs) kodowane w zagnieżdżonych nawiasach okrągłych |
| Obsługa wielu partii | Wiele kompletnych partii może być połączonych w jednym pliku .pgn |
| Wartości wyników | Stały słownik: 1-0 (wygrana białych), 0-1 (wygrana czarnych), 1/2-1/2 (remis), * (nieznany/w toku) |
| Długość linii | Specyfikacja zaleca ≤ 80 znaków na linię; akceptowane zakończenia linii LF lub CRLF |
| Deweloper | Steven J. Edwards (specyfikacja opracowana przez społeczność) |
| Wydano | 1994 (PGN specification) |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | www.thechessdrum.net |