Palview4 Manual  *   The Palview Pages  *   The Palview Developers Forum  *   Home  *   Palamede

The Magazine Page

Something completely new to Palview4 is its new magazine system, and central to this new system is the new game viewer. The magazine page introduces an entirely new concept to Palview. Up to now, Palview has been used to generate essentially raw game pages. (The games can contain commentary and variations, of course.) You supply the game(s) and Palview creates a game page -- as a webmaster, you still have to supply the content, or dressing, of the page. But this method meant that you had to edit the Palview pages to add any content that you wished. (The Palview options of headerfile and footerfile at least offered a mechanism to surround a Palview page with banner-type content. Not bad, but not the best either.)

So we wanted a new system that would essentially reverse this order of things. The new idea then is to let you create all the content first, then Palview fills in the game(s), diagrams, crosstables, etc. -- all those tedious tasks that are best left to a program.

This is accomplished by passing Palview an Html file along with your PGN (and optionally an INI file specific to the magazine.) Palview reads the games in the PGN file, then reads the Html file twice. The first reading allows Palview to gather information about the material that you want it to insert. (It also uses pass 1 to build up a game and opening index.) In pass 2 the program writes a new Html file — named after the PGN — that contains the original content from your Html file, which we refer to as the template file, and the inserted content that the program generated to satisfy your insertion requests. This file is the magazine file created for you by Palview. It will also write a set of Html files, one for each game you insert, called gN.htm where N is the number of the game in the PGN file, 0 being the first, 1 the second, and so forth. The program may optionally create a JavaScript file along with the magazine if certain features are enabled, for example activemag. All of these files will be written to the same folder as the template file. The game viewer file, created separately, must also be in the same folder in order to replay any of the inserted games. For information on setting up your website for a magazine, please see the section Setting Up the Website.

As your magazine page will be named after your PGN file, please don't name your template file after the PGN! It is a good policy to append 'tmp' to the name of your template files in order to distinguish them from your magazine and PGN files. For example, if you want a magazine page named 'chessnews.htm', you would use a PGN called chessnews.pgn and a template called chessnewstmp.htm, or some naming variation of a similar kind.

As a webmaster, you ask Palview to insert content by placing palview insertion requests directly into your Html template file using simple Html comments. To insert a game, you can use:

<!-- palview game 5 -->

For all the games from an event, you can use:

<!-- palview event "Candidates Match" -->

For a crosstable (linked to the games), you can use:

<!-- palview cross "Candidates Match" -->

You can also get Palview to insert diagrams directly into the magazine that use the Palview piece images:

<!-- palview diagram r3k2r/pp1n1pp1/2p1p2p/3q3n/3P4/5N2/PPPBQPP1/1K1R3R:
Karpov - Seirawan<BR>White to play 17. ? -->

An index of the games in the magazine can be generated by Palview and inserted into the magazine with:

<!-- palview gameindex -->
<!-- palview openindex -->

The new magazine system only physically inserts a link into the magazine to each game inserted. Each game itself is written by the program as a separate Html file that is loaded by the new game viewer when a game link is clicked on in the magazine itself. By separating the games from the magazine itself, visitors get to download the magazine relatively quickly, and they only have to actually play through the games they choose to look at without having to download them all along with the magazine. (Trying to load a page that contains 20 or more completely replayable games would be very costly indeed!)

Note that in order for it to be completely useable, you must first build a separate game viewer for the magazine that will be used in conjunction with it.

The magazine page contains a small JavaScript function, written by the program, that is used to communicate with the viewer for reading the games:

var vh=450;
var vw=700;
var top=left=0;
var scrnw=screen.width;
var scrnh=screen.height;
function Gm(gn)
 var viewer='gameview.htm?g=g'+gn;,'','height='+vh+',width='+vw+',top='+top+',left='+left);

This JavaScript code will be used to link the games in the magazine to the viewer so that they can be replayed. The links themselves always use the game's number in the PGN file as in gN.htm. (The first game in a PGN file is zero as far as the program goes, so its corresponding game html file would be g0.htm.) Note that these games are special Html files that are written specifically to be used in the new magazine game viewer. These games are created by the new magazine page.

The first thing that you must do to create a magazine is to set the magazine htmltype INI option.

htmltype = magazine

Palview will read your INI file (if one is passed to it), then read the games from the PGN file, and finally will read the Html template file. This template file contains your magazine Html and the insertion requests for material that you want Palview to insert for you. The template file is read twice: once to gather information about the games to insert, to build an index, and second to actually fill in the material to be inserted. Palview writes a new Html file that contains all your original Html from the template file plus the material inserted by itself. This Html file will be named after the PGN file so that the original Html template file is not overwritten and can be used again. The program will also write separate Html files for each replayable game to be viewed from the new game viewer.

It is best to divide the CSS of your magazine into two separate CSS files that can be linked to your template Html file. One CSS file will be used to control only the Html material you create yourself. The other is for the Html inserted by Palview, such as diagrams, crosstables, etc. This second CSS file is set by the new INI option: magazinecss.

magazinecss = "p4mag.css"

For more information, please see the new INI option magazinecss. For all the details about the magazine and its CSS, please see the section CSS For the Magazine which also includes a useful discussion about preparing the template file for using your own CSS.

These CSS files are typically linked to your magazine page as in the following example:

<TITLE>Your Magazine Title</TITLE>
<LINK REL='stylesheet' HREF='p4mag.css'>
<LINK REL='stylesheet' HREF='yourmag.css'>

Please note that you do not need to add a LINK to the CSS file declared in your magazinecss INI option: the program will insert it into your final Html file if it does not find it in the template file. The program will also write the special JavaScript function that is needed to communicate to the new game viewer. Anything else that the program finds in the HEAD section of your template file will be copied as is into your final Html file, including META tags, etc.

You should be aware that a number of INI options are automatically set whenever you create a magazine page or a viewer. These values cannot be changed, otherwise the games written by the magazine might have different settings from the viewer and this could make the game viewer inoperative. The INI options and there preset values are:

movelinks = on

movingpcs = on

usekeystrokes = on

multilang = off

ns4comp = off

tooltipboard = off

Game Insertion

The main objective of the new magazine page is to be able to insert chess specific material, especially replayable games. For each game that you insert into your magazine, Palview will write a corresponding separate html file for the game. This game file will be called gN.htm where N is the number of the game (less one). This special game file is loaded by the new game viewer to be replayed. Note that this special game html file will only be written once during the processing of the magazine page -- the very first time the game is encountered. But it is possible to include the same game a number of times throughout the magazine (for instance, in a crosstable and in a separate link below it.) Once the gN.htm file has been written, the game is marked as written and the program will not write it again, but it will write any further links to this game if the game appears again in the magazine.

The command to insert a replayable game is:

<!-- palview game 1 -->

You can insert multiple games by separating the game numbers with a comma, as in this example:

<!-- palview game 1,2,3 -->

All of the games are taken from the PGN file passed along with your magazine template Html file. Note that although the first game in the PGN file is number 1, the program will generate a separate game file called g0.htm for this game. And for game 2 in the PGN you'll get g1.htm, etc. This is just something to keep in mind, but all you really need to remember is that the first game in the PGN file is number 1. This is the number you need to place in the game insertion command.

It is illegal to insert an empty game into the magazine. It is perfectly OK, however, to include empty games in the magazine's PGN file to allow proper crosstables to be inserted -- but don't try to insert an empty game! This will generate an error. One other point to take note of is that diagrams are suppressed in the magazine's replayable games. You can include a diagram marker in any PGN game, but it will be ignored.

Game links are written to the magazine file as an Html Unordered List with a CSS class called gm.

<UL class='gm'>
<LI> game link
<LI>  ... 

The actual game link, say for game 1, is written as:

<A HREF='javascript:Gm(0)' TITLE="openingtooltip">player info game info</A>

The openingtooltip above is determined by the INI option: tooltipopening. If tooltipopening is set to off, then no tooltip is written at all. An example of an opening tooltip is:

TITLE="QGD : Anglo-Tarrasch : Bogolyubov Variation"

The player info is written as: White Title (Elo) - Black Title (Elo) with the values taken from the appropriate PGN Tags for the game. The formatting of the player's names themselves is controlled by the INI option: namepattern. An example of the player info is:

Korchnoi V. GM - Kasparov G. GM

The game info is written as: result (moves) [ECO] rN Event, Site Date. You can select how much of this information you want using the new INI option: gamelinkinfo. An example of the game info is:

0-1 (77) [D34] r6 Candidates Match2

Putting it altogether, we might end up with something like:

<UL class='gm'>
<LI><A HREF='javascript:Gm(1)' TITLE="QGD : Anglo-Tarrasch : Bogolyubov Variation">
Korchnoi V. GM - Kasparov G. GM 0-1 (77) [D34] r6 Candidates Match2</A>

A complete description of the CSS for the game link can be found in the section, CSS for Inserted Game Links.

Static Game Insertion

It may sometimes be useful to insert a static game directly into your magazine. One reason why you might want to do this is to use a game fragment as a visual teaser to entice a viewer to click on the link to a complete, replayble version of the same game.

The command to insert a static game is:

<!-- palview static 1 -->

In the example below, you can see that a game fragment of the Williams - Bogdan game has been inserted as a static game. After the game, you see the two links to games by Bogdan, the first of which is the same game, but complete and replayable.

The above was accomplished by first creating a fragment of the original Williams - Bogdan game and appending it to the end of the PGN file. Notice in the PGN game example below that we have used a FEN Tag to supply the position after White's 19th move. All the actual moves before Black's 19th have been deleted. We have used the special Intro comment to supply our teaser text and we have added a Diagram Marker immediately after this Intro comment to get Palview to generate a diagram of the position. A board caption has also been provided. (Note that diagrams that appear in the magazine from inserted static games may be active if avtivemag is set. For more details, see avtivemag.)

[White "Williams, Paul"]
[Black "Bogdan, Lia"]
[Event "Remembrance Day Open"]
[Site "Toronto, CAN"]
[Date "1983.??.??"]
[Round "?"]
[Result "0-1"]
[FEN "r2q1rk1/p1p3pp/1p1bp3/3p3n/2PP1P2/1PB3P1/P1QNPRK1/R7 b - - 0 19"]
[SetUp "1"]
[WhiteCountry "CAN"]
[BlackCountry "CAN"]

{Lia Bogdan unleashes a nice tactical sacrifice against Williams to
quickly bag the full point. Can you see it in the diagram?}
{#[Williams - Bogdan<BR>Position after 19. f4]}
19... Nxg3!! 20. Kxg3 Qg5+ 21. Kh3 Bxf4 22. Rxf4 Rxf4 23. Nf3 Qg4+
24. Kh2 Rf5 25. Kh1 Qg3

The next step was to insert it into the magazine using the following in our template Html:

<!-- palview command pgnheader = off -->
<!-- palview static 25 -->
<!-- palview command pgnheader = on -->
<!-- palview game 7,8 -->

Note in the above example that we use the new command to turn off the INI option pgnheader so that no gameinfobox is created. (More about the new command later on in this section.) We then insert the static game fragment and turn on our pgnheader again. After a simple Html <BR>, we insert the two replayable games, the first of which is the same game as that which we inserted as a static game, although it is complete.

One thing to note about static games: Static games are not included in either index when the index is created from the magazine. They are intended to provide visual game material in the magazine itself, but are not a replacement for the replayable games.

It is also possible to have your inserted static game use two columns. You can insert a column break into the PGN game where you would like the break to occur. The column break is inserted into the game as a special PGN Command Extension within a comment:

{[%palview colbreak]}

Here is an example PGN game:

[White "Sokolov, Andrei"]
[Black "Salov, Valerii"]
[Event "Nikolaev Otborochny"]
[Site "USSR"]
[Date "1984.??.??"]
[Round "?"]
[Result "1-0"]
[WhiteTitle "GM"]
[BlackTitle "GM"]
[WhiteCountry "USSR"]
[BlackCountry "USSR"]

1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 d6 6. Bc4 e6
7. Be3 a6 8. Qe2 Qc7 9. O-O-O Be7 10. Bb3 O-O 11. Rhg1 Nd7
12. g4 Nc5 13. Nf5!? b5 14. Bd5! Bb7 15. g5 exf5 16. g6! hxg6
17. Rxg6 Ne5 18. Rxg7+ Kxg7 19. Rg1+ Ng6 20. exf5 Rh8
21. Bd4+ Bf6 22. fxg6 fxg6 23. Qg4 Rh6 24. Bxf6+ Kh7 25. Re1
{[%palview colbreak]}
{#[Position after 25. Re1<BR>Sokolov - Salov]}
{Sokolov and his trainer, V. Yurkov, had arrived at this 
position in home analysis. Keep the midnight oil burning!}
25... Bxd5 26. Nxd5 Qc8 27. Re7+ Kg8 28. Rg7+ Kf8 29. Rg8+ Kxg8
30. Ne7+ 1-0

And here is the resulting inserted static game:

Crosstable Insertion

Crosstables can also be inserted into your magazine, provided that all the games for the event are included in the PGN file.

The command to insert a crosstable is:

<!-- palview cross "event-name" -->

The event name must match the PGN Tag [Event "event-name"] exactly and this is true for every game in the event. All the games from the event must be in the PGN file. Palview needs to know all the results of all the games from an event in order to create a correct crosstable. Some of these games can be empty games if you just need to fill out the missing games to complete the event. In this case, only the result from the empty games will be included in the crosstable but no links will be generated to these games. This can be useful if you want to generate a complete and accurate crosstable for an event, but you only want to include a selection of the games for your magazine.

Here is an example of an empty game. Note that there are no moves or commentary after the tags, only the game result.

[White "Smyslov, Vassily"]
[Black "Ribli, Zoltan"]
[Event "Candidates Match"]
[Site "London, England"]
[Date "1984.??.??"]
[Round "11"]
[Result "1/2-1/2"]


If you wish to have the resulting crosstable link to the games, you must remember to set the crosslink INI option to on.

Below is an example of an inserted crosstable for a Match:

Palview always writes an anchor before the crosstable itself that can be used as a target for an internal link, say from a Table of Contents. This anchor always contains the name of the event itself as in this example:

<A NAME='pcross_Dortmund'></A>
 ... the crosstable appears here 

All the CSS for the inserted crosstable is the same as for previous Palview generated crosstables. For more information about the CSS, please see CSS for the Crosstables. For information about the various INI options that affect crosstables, please see Crosstable Basics. For more information about Palview4 and crosstables, please see Crosstables and Tournament Coverage.

Note that inserted crosstables are useful if you wish to link from the tables directly to any, or some, of the games from the event to the new game viewer. If, on the other hand, you just wish to have the Html of a crosstable, without using the games, you may wish to use the new Palview Utility program to create such a table. You can insert the Html created by the Utility program directly into your magazine using the new file insertion command to be discussed further below.

Diagram Insertion

Diagrams can easily be inserted into your magazine using the new diagram insertion command. The diagrams that are inserted can even be active in that visitors to your page will be able to move the pieces around on the board, provided that you use the INI option activemag. When activemag is set to on, Palview will generate a special JavaScript file named after the magazine that will be linked to by the magazine's Htm file. This special JS file contains the code required to move the pieces around on the board. It is also possible to take back any moves you make on the board as well. (See activemag for more detail.) Of course, if you decide not to use active diagrams, then the boards will be static in that you cannot move the pieces around on them.

The actual board image to be used in the diagrams in set by the INI option boardimage. Note that it is especially useful to name your board image after the size of the pieces you expect to use (set by the new INI option magdiagramsize). If you use such a naming convention for the board image, then Palview will be able to determine the correct board image to use if you decide to change the size of the pieces for other diagrams within your magazine. (More on this below.)

In general, the command appears as follows, where operands within the square brackets are optional:

<!-- palview diagram [size=N] [flip] FEN[:caption] -->

The program will use the current value of magdiagramsize to create a diagram. But you can override this value temporarily by adding a size= operand in your diagram insertion command. For example, you can have a diagram inserted using the 24 pixel pieces by writing:

<!-- palview diagram size=24 ... -->

Note that this will not affect the value of magdiagramsize so that the very next diagram will again use its value.

You can also choose to flip a diagram so that the Black pieces appear on the bottom of the board instead of the top. (To give a Black perspective on a given position.) To do this, you just insert the word flip just before the FEN itself (or after the size= if one is used.) An example might be:

<!-- palview diagram size=24 flip -->

Finally, the actual diagram position itself is provided as a FEN followed by an optional caption. The FEN does not have to be complete -- only the position part is needed (not the game state variables that follow it). To supply a caption, you need to append the ':' character after the FEN and before your caption text. Here is an example of the initial position and a caption:

<!-- palview diagram
rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR:White to play and win -->

Note also that the position itself does not have to be a legal one at all. This can sometimes be useful to illustrate certain features about a position. Consider this next example:

<!-- palview diagram 
8/1p3p1p/p2p2p1/2pP4/P3PP2/6PP/1P6/8:Benoni formation-->

Finally, It is also possible to mark certain empty squares in your diagram with a dot, cross, or circle. You use these special board markers just as if they were new piece types and you enter their piece letter into the FEN just like any other piece. The dot is a 'V', the cross is an 'X', and the circle is an 'O' (upper case o).

Finally, two other INI options allow you to automatically number your diagrams. The first option, diagramno, can be set to a non-zero number which will be used as the number of the first diagram in the magazine. This number is incremented for each diagram. The second option, diagnotext, can be used to set a text string that will be written just before each diagram number. Below is an example of a numbered diagram that uses the following settings:

diagramno = 1
diagnotext = "No."

This would produce a diagram such as the following:

Event Insertion

A shorthand for game insertion that can be useful is the Event insertion. With this, all the games from a specific Event are inserted into the magazine as replayable games. But the links to those games are all placed into an Html table very similar to that used by the crosstables. The Event insertion command appears as follows:

<!-- palview event "event-name" -->

Here is an actual example:

<!-- palview event "Nanaimo Remembrance Day" -->

Note that all the games from the named event must have exactly the same name in their corresponding Event PGN Tag, otherwise games that have only similar Event Tags will appear to be games from a different event. Just like the cross insertion, empty games are ignored and are not included in the Event insertion table. Below is an example of an Event insertion. Note that only two games from the Event were actually included in the PGN file.

The Event insertion is not very useful for inserting every game from an event. If you wish to do that, the cross insertion is a much better mechanism to use. But the Event insertion is very useful for a limited number of games from an event. One good use would be a round by round report of games where all the games from the latest round of some tournament are gathered together in one neat and tidy table.

The Html and CSS for the Event table are very similar to that of the crosstable. Below is an example of the Html of the above table:

<A NAME='pcross_Nanaimo Remembrance Day'></A>
<DIV class='pgc'>
<TABLE class='pgcb' CELLSPACING='0'>
<TR><TD class='pevent' ALIGN='left' COLSPAN='5'>
 Nanaimo Remembrance Day, Nanaimo, CAN 1983</TD></TR>
<TR><TD class='crow' ALIGN='left' COLSPAN='5'> </TD></TR>
<TR><TD class='pplay'>
<A HREF='javascript:Gm(20)' TITLE="Catalan : Closed : ...Nbd7">
Taylor G. - Basanta G.</A>
 1-0<TD> (29)<TD> [E07]<TD> </TD></TR>
<TR><TD class='pplay'>
<A HREF='javascript:Gm(21)' TITLE="Two Knights Defense : Goering Variation">
Harris P. - Brown H.</A>
 1/2<TD> (42)<TD> [C59]<TD> </TD></TR>

For more information about the CSS itself, please see CSS for the Crosstable.

Game Index Insertion

Because Palview reads your Html template file twice, this allows it to build a complete index that can then be inserted into your magazine during the insertion processing that occurs during the second reading / writing phase. To do this you simply insert this command into your Html template file to indicate where you want the index inserted (presumably near the end):

<!-- palview gameindex -->

Only those games that are inserted as replayable games into the magazine will be included into the inserted index. Any other games in the PGN file, including static games, will be ignored. Please see the Index for other details about the game index, including the CSS, Html, and INI options.

Opening Index Insertion

Just like the game index above, an opening index can also be inserted into your magazine with a simple command:

<!-- palview openindex -->

Only those games that are inserted as replayable games into the magazine will be included into the inserted index. Any other games in the PGN file, including static games, will be ignored. Please see the Index for other details about the opening index, including the CSS, Html, and INI options.

INI Command Insertion

Another feature that you may find useful while creating your magazine page is the ability to insert actual INI commands into your Html template file. The idea here is to be able to make changes to certain INI options while the page, and the games in it, are being processed. Here is the general form of the command insertion:

<!-- palview command commandname = parameters -->

The command is interpreted just as if an INI file had been read that contained a single command. The new value of the INI option is set and becomes the value for the rest of the magazine processing or until the value is changed again by another command. Here is a short example to illustrate. Assume that at some point in your magazine you want to insert a game, but you don't want this particular game to have any pgnheader (i.e. the infobox above the game moves that shows the player's names, etc.) You can turn off the pgnheader INI option before inserting the game, then turn it back on again afterward, like this:

<!-- palview command pgnheader = off -->
<!-- palview game 9 -->
<!-- palview command pgnheader = on -->

There are only a limited number of INI options that can be altered dynamically using the command insertion. Here is a list of those options that can be changed this way. (You can click on the option name to see a full page description for the option.)

crosscharacters = "text" ; default: ="10x" (alt. "10=*")

crosslink = on | off ; default: on

crossnamepattern = full | last | short | firstlast | initlast ; default: full

crosstags = none | {title, elo, country} ; default: none

flags = on | off ; default: on

gameinfomode = 0 .. 1 ; default: 0 (produces short game intro)

gamelinkinfo = none | { result, round, moves, event, site, date, all } ; default: none

introcom = on | off ; default: on

linebreaks = on | off ; default: off

magdiagramsize = 19 | 24 | 29 | 35 ; default: 29

maxswissplayers = 0 .. 100; default: 0 (all)

namepattern = full | last | short | firstlast | initlast ; default: full

overviewcols = 1 .. 8 ; default: 3

pgnheader = on | off ; default: on

symbolmethod = gif | text ; default: text

symtips = on | off ; default: off

tooltipcross = on | off ; default: off

tooltipopening = on | off ; default: off

File Insertion

This insertion command allows you to insert whole files into your magazine. The files that can be legally inserted are simple Text files (extension '.txt') or Html files (extension '.htm'). File insertion can be useful for inserting material into your magazine from other sources. One example may be to insert a crosstable created by the new Palview Utility program. Here is the general form of the file insertion:

<!-- palview file "filename.ext" -->

Note that the files to be inserted must reside in the same folder or directory as the Html template file. (This is the same for the headerfile and footerfile.) One other point to note: when a Text file is inserted, the entire contents of the file is inserted. But for an Html file, only the material between the <BODY> and </BODY> tags is actually inserted -- all the rest is skipped over. This is done so that you can work on complete external Html files that may include LINKs to CSS files, etc. before you insert them. Later on, when you are ready to perform the insertion, you won't need to delete anything before, and including, the <BODY> tag and after, and including, the </BODY> tag.

Here is an example of a file insertion:

<!-- palview file "compch.htm" -->

Datetime Insertion

This next insertion command simply inserts the current date and time. The actual date and time is taken from the computer's system clock each time the magazine page is processed through the Palview program. Here is the command:

<!-- palview datetime [euro] [utc] -->

The program will normally insert the date and time in the format shown in the example below:

Mon Jan 27, 2003 7:12pm

The optional operand, euro, tells the program to format the date time in a common European format,,, as in the example:

28.01.2003, 01:31

The optional operand, utc, tells the program to use Coordinated Universal Time instead of Local time. If UTC time is used, then the program will use UTC time and a 24 hour clock:

Tue Jan 28, 2003 01:06 UTC
28.01.2003, 01:31 UTC

This command allows a webmaster to set the date and time when the last update to his magazine page was made. Typically, you would see this command used as in the next example:

Last updated:<B><!-- palview datetime --></B>

Note that the optional operands must be given in the order shown above if both are used, namely euro first, then utc.

Overview Insertion

Our last insertion command can be used as a round by round reporting tool. If you assume that you are following the games in some recent ongoing event, you may decide to report on the event on a round by round basis. In this case, all the games from the latest round are gathered together in an overview table which shows the final position of each game in a diagram. (Each of these diagrams may be active if activemag is set. See activemag for more details.) Here is the command:

<!-- palview overview 1,2,3,4,5,6 -->

Here is an example of the first two boards from an inserted overview:

The actual number of diagrams across the page is controlled by the INI option: overviewcols.

Note that the last move played in the game along with the game result and the player names forms the diagram's caption. This caption can be clicked to view the complete game in the new magazine game viewer. The caption can also be tool tipped with extended opening information by using the INI option: tooltipopening.

Using SQL-like Game Insertion

It is possible to use SQL-like statements to insert games into your magazine page. This is only valid for the game, static, and overview insertion commands. Each SQL-like statement must fill out the five data fields in this format:

white - black : event (round) year

Each of the field values must match the corresponding PGN Tag value of the game you want exactly. This is especially important in regard to the player's names where even spaces are important. The year field takes its value from the Date Tag (the month and day are ignored for now.) You can use the special character '*' in any of the fields to essentially say, 'match any value in this field'. Note that the characters that appear between the fields, - : ( ) and essential and must appear in your search statement as they are used as field separators. Here are some examples of the SQL-like search statements:

<!-- palview game Kasparov,G - * : Linares (*) 2003 -->
<!-- palview overview * - * : Linares (3) 2003 -->
<!-- palview static Kramnik, V. - Kasparov, G. : XX SuperGM Linares (1) 2003 -->

Afterward ...

We will continue to develop the new magazine in the future by adding new material that can be inserted directly into the page. If you have any ideas of just what you would like to see added to the magazine page, please contact us, we'd like to hear from you!