Portable Move Notation

A general purpose PAN-based format for recording moves in most chess variants.

Created
Updated
Status
1.0.0

Introduction

PMN (Portable Move Notation) is a lightweight, PAN-based format that gives a consistent and easy way to represent moves in the context of chess games.

Compatible with multidimensional boards, easy for humans to read and write, and easy for machines to import and export, it is completely laws of game independent and compatible with most abstract strategy board games such as Draughts, Go and the main chess variants, including 장기Janggi, หมากรุกMakruk, 将棋Shogi, Western, 象棋Xiangqi. These properties make PMN an ideal data-interchange format for storing changes between actions of most actors from abstract strategy board games such as pawns, pieces, kings, stones.

Notational conventions

The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119.

Naming the board squares

Squares MUST be identified by a coordinate from an array that is a one-dimensional flattening of the board. E.g., on the starting position of a traditional Western chessboard, the square of the White Queen is 59 and the square of the White King is 60.

Notation for Moves

Resource representation

The BNF structure below shows the format of the resource:

<moves>   ::= <move> | <move> "." <moves>
<move>    ::= <actions>
<actions> ::= one or many actions in PAN (Portable Action Notation) format

Example

Considering the King’s Gambit opening with the moves:

  1. e4 e5
  2. f4

After serializing them to PMN format, we MUST have:

52,36,♙.12,28,♟.53,37,♙

See also
Implementation