FIS版リザルト作成

はじめに

FIS版のリザルト作成とXMlファイルの作成について記載します。
FIS大会では、TDは大会終了後に以下の成果物をFISへ提出しなければなりません。

  • スタートを切ったFISランキング上位5名の平均を計算したシート
  • 大会終了時の順位(DNF、DNF、DSQを含む)をXMLファイルで作成したもの
  • 英語版リザルト

それぞれの目的は以下の通りです。

  • FISポイントのスケール値を決定するため
  • FISサイトでのスタンディング(順位)ページを表示するため
  • FISリザルトをダウンロード出来るようにするため

ここでは英語版リザルトの作成について説明します。
日本で開催されるFIS大会はA級を兼ねた大会が多く、FISコードを持っていない選手も出場しています。
しかし、FISリザルトを作成するためにはFISコードを持っていない選手を除外したリザルトを作成する必要があります。
こういった理由から以下の事象が発生します。

  • 決勝進出者にFISコードを持っていない選手がいたら、決勝進出者数はFISコードを持たない選手を除外した数となる
  • スーパーファイナル進出者にFISコードを持っていない選手がいたら、スーパーファイナル進出者数はFISコードを持たない選手を除外した数となる
  • 決勝進出者が全員FISコードを持っていない場合は予選を最終リザルトとする
  • スーパーファイナル進出者が全員FISコードを持っていない場合は決勝を最終リザルトとする

こういった事象を踏まえて終了したリザルトシステムに手を加えていきます。

前提

以下のフォルダを作成しておいてください。

C:\work\wwwroot

手順

1.大会情報ダイアログでFISを選択する

fis_result01

2.予選リザルトの操作

予選リザルトのシート(リザルトF、リザルトM)からFISコードを持たない選手を削除します。

2-1. オプション列表示をクリックする

fis_result02
fis_result03

オプション列表示をクリックした画面

2-2. FISコードを持たない選手を削除する

2-3. 削除した選手数を転送人数から差し引く

2-4. もともとの決勝進出者数内にFISコードを持たない選手がいたら決勝進出者数を調整する

fis_result06

削除する行と調整する箇所

2-5. 再度ポイント順ソート、同点処理を実施する

fis_result04

3.決勝リザルトの操作

決勝リザルトのシート(決勝リザルトF、決勝リザルトM)からFISコードを持たない選手を削除します。
3-1. オプション列表示をクリックする
3-2. FISコードを持たない選手を削除する
3-3. 削除した選手数を転送人数から差し引く
3-4. もともとのスーパーファイナル進出者数内にFISコードを持たない選手がいたら決勝進出者数を調整する
3-5. 再度ポイント順ソート、同点処理を実施する

4.スーパーファイナルリザルトの操作

スーパーファイナルリザルトのシート(S決勝リザルトF、S決勝リザルトM)からFISコードを持たない選手を削除します。
4-1. オプション列表示をクリックする
4-2. FISコードを持たない選手を削除する
4-3. 削除した選手数を転送人数から差し引く
4-4. もともとのスーパーファイナル進出者数内にFISコードを持たない選手がいたら決勝進出者数を調整する
4-5. S決勝リザルトの決勝進出者数を決勝の決勝進出者数に、転送人数にスーパーファイナル進出者数にする
4-6. 再度ポイント順ソート、同点処理を実施する

5.FIS版リザルトの出力

5-1. 予選決勝統合にチェックを入れます。

fis_result07

5-2. リザルト出力をクリックします

リザルト出力をクリックすると予選リザルトのシート(リザルトF、リザルトM)と決勝リザルトのシート(決勝リザルトF、決勝リザルトM)のデータをスーパーファイナルリザルトのシート(S決勝リザルトF、S決勝リザルトM)にコピーしてから出力処理が行われます。

XMLファイルについて

XMLファイルの作成はTDの責務ですので、記録計算係の担当外です。
知識として知っていても良いかも知れませんので簡単に概要を記載しておきます。
XMLファイルは以下のようなフォーマットです。必要なデータを半角英数字で記述します。ファイルはUTF-8の文字コードで保存しなければなりません。
テキストエディタで必要な箇所を記述します。
FISデータ向けXMLのタグやスキーマに関する詳細説明については以下のPDFファイルを参照してください。
EXPLANATION OF THE FIS DATA EXCHANGE XML PROTOCOL

FIS用XML(Fisresults)の大枠

Fisresultsタグには2つの子要素が含まれます。各子要素の説明を以下に記載しています。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="fisfs.xsl" type="text/xsl" ?>
<!DOCTYPE Fisresults SYSTEM "fisdtd.dtd">
<Fisresults>
	<Raceheader Sector="FS" Sex="L">レース情報のヘッダー。属性SectorにはFS、SexにはMかLを記載</Raceheader>
	<FS_race>FS_raceinfo、FS_classified、FS_notclassifiedの3つの子要素が入ります</FS_race>
</Fisresults>

Fisresultsタグの子要素について

Fisresultsタグの子要素にはRaceheaderタグとFS_raceタグが含まれます。それぞれのタグの子要素の概要は以下の通りです。

<Fisresults>
	<Raceheader Sector="FS" Sex="L">レース情報のヘッダー
		<Season>シーズンを記載</Season>
		<Codex>コーデックスを記載</Codex>	
		<Nation>JPN</Nation>
		<Discipline>種目(MOかDM)を記載</Discipline>
		<Category>カテゴリーを記載。ここではFIS固定</Category>
		<Racedate>開催日付をDay、Month、Yearタグに分けて記載</Racedate>
		<Eventname>大会名を記載</Eventname>
		<Place>開催地域を記載</Place>

<TD Function="Delegate">
			<Tdnumber>TD番号を記載(不明なら空欄)</Tdnumber>
			<Tdlastname>TDの姓を記載</Tdlastname>
			<Tdfirstname>TDの名を記載</Tdfirstname>
			<Tdnation>JPN</Tdnation>
		</TD>

	</Raceheader>
	<FS_race>
		<FS_raceinfo>ここにはレース情報を記載する→Finalと記載</FS_raceinfo>
		<FS_classified>順位が付く選手はこの中に順位毎に記載</FS_classified>
		<FS_notclassified>順位が付かない選手はこの中に記載DNF、DNS、DSQの順に記載</FS_notclassified>
	</FS_race>
</Fisresults>

FIS用XMLの実例

実例をもとに本文中にコメントを入れましたので参照してください。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="fisfs.xsl" type="text/xsl" ?>
<!DOCTYPE Fisresults SYSTEM "fisdtd.dtd">
<Fisresults>
	<Raceheader Sector="FS" Sex="L">		←SexにはMかLを記載
		<Season>2018</Season>		←シーズンを記載
		<Codex>8483</Codex>		←コーデックスを記載
		<Nation>JPN</Nation>		←開催国名を記載
		<Discipline>MO</Discipline>		←種目(MOかDM)を記載
		<Category>FIS</Category>
		<Racedate>
			<Day>27</Day>		←開催日を記載
			<Month>1</Month>		←開催月を記載
			<Year>2018</Year>		←開催年を記載
		</Racedate>
		<Eventname>2018 Freestyle ski Fukushima #1</Eventname>		←大会名を記載
		<Place>Inawashiro</Place>	←開催地域を記載

<TD Function="Delegate">
			<Tdnumber></Tdnumber>		←TD番号を記載(不明なら空欄)
			<Tdlastname>ARASE</Tdlastname>		←TDの姓を記載
			<Tdfirstname>HIROKI</Tdfirstname>		←TDの名を記載
			<Tdnation>JPN</Tdnation>		←TDの所属国名を記載
		</TD>

	</Raceheader>
	<FS_race>
		<FS_raceinfo>
			<Level>Final</Level>		←最終リザルトなのでFinalと記載
		</FS_raceinfo>
		<FS_classified>		←順位が付く選手はこちらに記載
			<FS_ranked Status="QLF">
				<Rank>1</Rank>		←順位を記載
				<Competitor>
					<Fiscode>2531368</Fiscode>		←FISコードを記載
					<Lastname>IHARA</Lastname>		←姓を記載
					<Firstname>Haruka</Firstname>		←名を記載
					<Nation>JPN</Nation>		←国名を記載
				</Competitor>
				<FS_result>
					<TotalScore>40.15</TotalScore>		←ポイントを記載(必須ではない)
				</FS_result>
			</FS_ranked>
			<FS_ranked Status="QLF">
				<Rank>2</Rank>		←順位を記載
				<Competitor>
					<Fiscode>2528768</Fiscode>		←FISコードを記載
					<Lastname>HORISHIMA</Lastname>		←姓を記載
					<Firstname>Arisa</Firstname>		←名を記載
					<Nation>JPN</Nation>		←国名を記載
				</Competitor>
				<FS_result>
					<TotalScore>33.27</TotalScore>
				</FS_result>
			</FS_ranked>
			<FS_ranked Status="QLF">
				<Rank>3</Rank>		←順位を記載
				<Competitor>
					<Fiscode>2532985</Fiscode>		←FISコードを記載
					<Lastname>ASANO</Lastname>		←姓を記載
					<Firstname>Kaori</Firstname>		←名を記載
					<Nation>JPN</Nation>		←国名を記載
				</Competitor>
				<FS_result>
					<TotalScore>31.00</TotalScore>
				</FS_result>
			</FS_ranked>
		</FS_classified>
		<FS_notclassified>		←順位が付かない選手はこちらに記載
			<FS_notranked Status="DNF">		←DNFの場合はDNFを記載
				<Competitor>
					<Fiscode>2532226</Fiscode>
					<Lastname>MOTONO</Lastname>
					<Firstname>Rion</Firstname>
					<Nation>JPN</Nation>
				</Competitor>
			</FS_notranked>
			<FS_notranked Status="DNF">
				<Competitor>
					<Fiscode>2530698</Fiscode>
					<Lastname>KAWATA</Lastname>
					<Firstname>Yuka</Firstname>
					<Nation>JPN</Nation>
				</Competitor>
			</FS_notranked>
			<FS_notranked Status="DNS">		←DNSの場合はDNFを記載
				<Competitor>
					<Fiscode>2533488</Fiscode>
					<Lastname>NAKAO</Lastname>
					<Firstname>Haruka</Firstname>
					<Nation>JPN</Nation>
				</Competitor>
			</FS_notranked>
		</FS_notclassified>
	</FS_race>
</Fisresults>

スタートリストについて

スタートリストは英語版の作成機能はありませんので、エントリーリストからFISコードを持っていない選手を削除してからスタートリスト詳同またはスタートリスト詳別をクリックして作成してください。
英語表記があるのでこれで代用可能です。

XMLファイル出力

「4.スーパーファイナルリザルトの操作」を終了したらダイアログでXML出力をクリックするとC:\work\wwwrootに「JP_コーデックス.XML」というファイル名のXMLファイルが作成されます。ただし、複数のエクセルファイルを同時に開いている場合は正しく保存されない場合があります。全てを閉じてリザルトシステムのみを単体で起動してください。
fis_result05
作成されたXMLファイルをalpineresults@fisski.ch宛にメール添付して送信することでFISサイトに自動でアップロードされます。メールのタイトルは「地域名 コーデックス」で問題ありません。本文は空で問題ありません。
送信内容にエラーが存在するとエラー通知がメールで届きます。

XMLファイル名

  • JP_[女子コーデックス].XML
  • JP_[男子コーデックス].XML

出力されたXMLファイルは、以下のようにメールして下さい。

宛先 alpineresults@fisski.ch
件名 [ホモロゲーションの英名] #[コーデックス]
本文 件名と同じ
添付 XMLファイル1つ

例)

コーデックスが8146の場合(第 30回 東京都フリースタイルスキー選手権大会)

宛先 alpineresults@fisski.ch
件名 Inawashiro #1 8146
本文 Inawashiro #1 8146
添付 JP_8146.XML