O que é o formato de ficheiro PGN?
.pgn (Portable Game Notation) é o padrão de dados de partidas de xadrez mais popular. Arquivos .pgn armazenam os lances da partida de xadrez junto com a data da partida, local, nome do evento, rodada, resultado do jogo e nomes dos jogadores.
Estrutura de dados de um arquivo .pgn
Os dados do cabeçalho em um arquivo .pgn são formatados usando pares de etiquetas entre colchetes. O conjunto obrigatório - o Seven Tag Roster - abrange [Event], [Site], [Date], [Round], [White], [Black] e [Result]. Os movimentos dos jogadores seguem em uma seção de *movetext* usando a Notação Algébrica Padrão (SAN), com comentários entre chaves { } e anotações como ! ou ?. Não há assinatura binária; os arquivos .pgn são identificados pela etiqueta de abertura [Event ".
Dados salvos em formato de texto
Arquivos .pgn armazenam informações em formato de texto simples (ASCII) e, portanto, podem ser facilmente lidos por humanos e programas. Várias partidas podem ser concatenadas em um único arquivo .pgn, o que é comum para livros de aberturas e bancos de dados de torneios. Formatos de posição relacionados incluem .FEN para posições individuais do tabuleiro e .EPD para descrições de posição estendidas.
Padrão comumente usado
O formato .pgn é comumente usado para armazenar e compartilhar (inclusive online) dados de partidas de xadrez por meio de plataformas como Lichess e Chess.com. Arquivos .pgn podem ser usados para análise pós-jogo e do progresso do jogador, treinamento de engines e arquivamento de registros de torneios.
Segurança e proteção
RISCO: LOWO PGN é texto simples sem conteúdo executável, portanto, os arquivos são inerentemente seguros para abrir. As únicas ressalvas: um PGN malformado ou gigante pode sobrecarregar um interpretador mal escrito e, como sempre, baixe softwares de xadrez de sites oficiais em vez de portais de «visualizador de PGN» cheios de anúncios. Não há capacidade de macro ou script no formato.
Detalhes do formato
em resumoProgramas que abrem arquivos PGN
Detalhes técnicos
especificação profunda| Tipo MIME | application/x-chess-pgn |
| Codificação de arquivo | Texto simples ASCII de 7 bits |
| Assinatura do arquivo | Sem magic bytes binários; identificado na prática pela etiqueta de colchete de abertura [Event "..."] |
| Estrutura do arquivo | Layout de duas seções: pares de etiquetas entre colchetes (cabeçalho) seguidos pelo movetext (lances do jogo) |
| Etiquetas de cabeçalho obrigatórias | Seven Tag Roster - [Event], [Site], [Date], [Round], [White], [Black], [Result] |
| Notação de lances | Notação Algébrica Padrão (SAN) |
| Glifos de anotação | Numeric Annotation Glyphs (NAGs) $1-$255; abreviações comuns: !, ?, !!, ??, !?, ?! |
| Sintaxe de comentários | Comentários de bloco entre chaves { }; comentários de linha após ; (até o fim da linha) |
| Suporte a variações | Recursive Analysis Variations (RAVs) codificadas em parênteses aninhados |
| Suporte a múltiplas partidas | Várias partidas completas podem ser concatenadas em um único arquivo .pgn |
| Valores de resultado | Vocabulário fixo: 1-0 (Brancas vencem), 0-1 (Pretas vencem), 1/2-1/2 (empate), * (desconhecido/em andamento) |
| Comprimento da linha | A especificação recomenda ≤ 80 caracteres por linha; terminações de linha LF ou CRLF são aceitas |
| Desenvolvedor | Steven J. Edwards (especificação desenvolvida pela comunidade) |
| Lançado | 1994 (PGN specification) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | www.thechessdrum.net |