|
| [Schachprobleme.de| ChessML Home| About| FAQ| Examples| Draft| ToDo| Documentation| Download| Links| News| Contact] |
| ChessML supports electronic data exchange and processing between the various forms of chess information: journals, books, databases, playing and solving programs. |
_________ __________________________ ______
| | | | | |
| Problem |====| CHESSML |====| Game |
|_________| |__________________________| |______|
/ | | | \
/ | | | \
____/ __|__ _____|__ __|_______ \ ___________
| | | | | | | | | |
|Move| |Event| |Notation| |References| |Definitions|
|____| |_____| |________| |__________| |___________| |
<references>
<source id="chessinformant" sourcename="The Chess Informant">
<date year="1994"/>
<issue id="chessinformant64" nr="64">The Chess Informant 64
</issue>
<issue id="chessinformant60" nr="60">The Chess Informant 60
<section id="ci60game389"/>
</issue>
</source>
</references> |
<event category="tournament" participant-no="??">
<location>Elgoibar
</location>
<participant>
<person><name firstname="G." lastname="Flear"/> </person>
</participant>
<participant>
<person><name firstname="R." lastname="Vera"/> </person>
</participant>
<participant>
<person><name firstname="???" lastname="???"/> </person>
</participant>
. . .
<results>
<list description="1st round results">
<listitem content="ci64game368">draw
</listitem>
<listitem content="???">???
</listitem>
<listitem content="???">???
</listitem>
. . .
</list>
<list description="2nd round results">
<listitem content="???">???
</listitem>
<listitem content="???">???
</listitem>
<listitem content="???">???
</listitem>
. . .
</list>
. . .
</results>
</event> |
<definition> See below ... </definition> |
<head source="chessinformant64" event="elgoibar" annotator="r. vera"
copyright="all copyrights, chess imformant publisher Yugoslavia">
<white title="gm" rating="2505">
G.Flear
</white>
<black title="gm" rating="2485">
R.Vera
</black>
<date year="1994"/>
</head> |
<date year="1994" month="12" day="4" time="19:00.00" timezone="CET" type="AD"> |
<mode timecontrol="40m-2h, 20m-1h, *-1h"> |
A typical body in the compact form could look like this:
<body ply-count="40">
<classification type="ECO" key="B31" keylist="ECOlist"/>
<moves party="w">
<d2/><d4/> <d7/><d5/>
<c2/><c4/> <c7/><c6/>
<N/><b1/><c3/> <e7/><e6/>
<e2/><e4/> <d5/><e4/>
<N/><c3/><e4/> <B/><f8/><b4/>
<B/><c1/><d2/> <Q/><d8/><d4/>
<B/><d2/><b4/> <Q/><d4/><e4/>
<B/><f1/><e2/> <P/><c6/><c5/>
<Q/><e4/><g2/> <Q/><d1/><d2/>
<Q/><g2/><h1/> 0-0-0
<N/><b8/><d7/> <m id="N"><Q/><h1/><g2/>!N</m>
. . .
</moves>
</body>
|
<body ply-count="40">
<classification type="ECO" key="B31" keylist="ECOlist"/>
<moves party="w">
d2d4 d7d5
c2c4 c7c6
Nb1c3 e7e6
e2e4 d5e4
Nc3e4 Bf8b4
Bc1d2 Qd8d4
Bd2b4 Qd4e4
Bf1e2 c6c5
Qe4g2 Qd1d2
Qg2h1 0-0-0
Nb8d7 <m id="N">Qh1g2!N</m>
. . .
</moves>
</body>
|
So it seems natural in the context of structured data to use the extended form, which could look like this:
<body ply-count="40">
<classification type="ECO" key="B31" keylist="ECOlist"/>
<moves party="w">
<m ply="1"><d2/><d4/></m>
<m><P/><d7/><d5/></m>
<m><P/><c2/><c4/></m>
<m><P/><c7/><c6/></m>
<m><N/><b1/><c3/></m>
<m><P/><e7/><e6/></m>
<m><P/><e2/><e4/></m>
<m action="capture"><d5/><e4/></m>
<m><N/><c3/><e4/></m>
<m><B/><f8/><b4/></m>
<m><B/><c1/><d2/></m>
<m action="capture"><Q/><d8/><d4/></m>
<m action="capture"><B/><d2/><b4/></m>
<m action="capture"><Q/><d4/><e4/></m>
<m><B/><f1/><e2/></m>
<m action="capture"><P/><c6/><c5/></m>
<m action="capture"><Q/><e4/><g2/></m>
<m><Q/><d1/><d2/></m>
<m action="capture"><Q/><g2/><h1/></m>
<m action="queensidecastle"><K/><e1/><c1/></m>
<m><N/><b8/><d7/></m>
<m id="N"><Q/><h1/><g2/><comment value="!"/><comment value="N"/></m>
. . .
</moves>
</body>
|
<body ply-count="40">
<classification type="ECO" key="B31" keylist="ECOlist"/>
<moves party="w">
. . .
<m action="queensidecastle"><K/><e1/><c1/></m>
<m><N/><b8/><d7/></m>
<m id="N"><Q/><h1/><g2/><comment value="!"/><comment value="N"/></m>
<analysis>
<text>This is an improvement of</text>
<moves party="b" type="variation" position="N" id="ref1">
<m action="capture check"><Q/><h1/><d1/></m>
</moves>
<referto reference="ci60game389" refpoint="thisposition"/>
</analysis>
. . .
</moves>
</body>
|
<definition defclass="piece" example="???" type="hopper" group="hopper" class="no"> <defname lang="en"> Soucie </defname> <defname lang="de"> Soucie </defname> <defname lang="fr"> Soucie </defname> <inventor src="strategems06"> Ben Good </inventor> <description src="strategems06" lang="en"> The Soucie is a Queen-lines hopper whose move length is determined by the number of men (incl. the Soucie itself) on that particular file, rank or diagonal. </description> <description src="os" lang="de"> Der Soucie ist eine Grashüpfer, dessen Zugl&amul;nge durch die Anzahl der auf der Linie oder Diagonalen stehenden Figuren (inkl. des Soucie selbst) bestimmt ist. </description> <description src="os" lang="fr"> ???? (The French of the author is too weak ...Sorry) </description> <rule src="strategems06"> </rule> </definition> |
<head source="Schwalbe"> <author firstname="Nikita" lastname="Plaksin"/> </author> <date year="1986"/> </head> |
<setup> <fen>S4Lk1/1bbbbbl1/1b6/2d1B1bB/8/1BB2B2/B3BbB1/ts3KTs/ </fen> </setup> |
<setup>
<position>
<piecelist color="white" notationtype="SAN">
<piece name="knight"> <a8/> </piece>
<piece name="bishop"> <e8/> </piece>
. . .
</piecelist>
<piecelist color="black" notationtype="SAN">
<piece name="king"> <f8/> </piece>
<piece name="pawn"> <b7/> </piece>
<piece name="pawn"> <c7/> </piece>
<piece name="pawn"> <d7/> </piece>
. . .
</piecelist>
</position>
</setup>
|
<condition definition="koeko">Kölner Kontaktschach</condition> <condition definition="maximummer">Längstzüger</condition> |
<twin> <condition definition="neukoeko" mode="add">Neu-Kölner Kontaktschach</condition> <condition definition="koeko" mode>Kölner Kontaktschach</condition> </twin> |
<stipulation set="1" tries="4" type="direct" tree="1.*;1.*;1">#3</stipulation> |
<twin> <condition definition="ander" mode="add">Andernach chess</condition> <stipulation set="1" type="help">exact-#3</stipulation> </twin> |
<body>
<position fen="kbK5/pp6/1P6/8/8/8/8/R7"/>
<stipulation set="1" tries="1"> #2 </stipulation>
<solution phase="set">
<co checked="+">
<m>1...B any</m><m>2.Rxa7#</m>
</solution/>
<solution phase="try">
<co checked="+"/>
<m>1.Ra any ?</m><m> 2.a6!</m>
</solution>
<solution phase="authors solution">
<co checked="+"/>
<moves party="w" type="mainline" ply="1">
<m>1.Ra6</m><m>bxa6</m>
<moves type="variation" party="b" ply="2"><m>1...B any</m><m>2.Rxa7#</m>
</moves>
<m>2.b7#</m>
</moves>
</solution>
</body>
|
<theme category="logical" id="lp">logical problem</theme> <theme category="zz" id="szz">schwarzer Zugzwang</theme> <theme category="sacrifice" id="ws">white sacrifice</theme> |