SVG Templates for the Sheets

It is possible to create your own layouts for the bracket sheets. Scalable Vector Graphics (SVG) is a family of specifications of an XML-based file format for two-dimensional vector graphics. SVG text file content is easy to read. An example text field could look like this:

<text x=”200” y=”330”
Hello, world!

You do not need to worry about the internals of the SVG format. Just create a sheet template like any PowerPoint presentation although the software must be SVG capable. Inkscape is an easy to use and free program. Adobe Illustrator misses some features but is usable.

File Names

You may use default sheet layouts and your own SVG layouts mixed:

JudoShiai uses your file for the layout if it exists, otherwise it uses the internal default layout.

SVG files must have certain names that contain three numbers. Name format:

<competition system>-<competitor count>-<page number>.svg

The first number is a code for the competition system, the second is the number of players and the third is the page number. For the pools the number of players is the exact number, but for the knock out systems the number is the maximum number of competitors for the sheet (8, 16, 32, 64, 128). You can have as many pages for one category as you wish (each page is its own file).

Competition systems are listed in the following table:




Single pool


Double pool


Double repechage


Swedish dubbelt återkval (SWE Double Repechage)


Swedish direkt återkval (SWE Double Elimination)


Estonian double elimination for D class


Double elimination without repechage


Swedish enkelt återkval (SWE Single Repechage)


Quad Pool


Spanish doble perdida (ESP Double Lost)


IJF double repechage


Spanish repesca simple (ESP Simple Repechage)


Modified double elimination


Double repechage, one bronze


Double pool 2 (third pool for final matches)


Double lost


British knock out


Double pool 3 (pool winners fight for the gold, second best for the bronze)


File name examples are listed in the following table:

File Name



Single pool, 1 competitor, 1 page.


Single pool, 2 competitors, 1 page.


Single pool, n competitors, 1 page.


Double pool, 7 competitors, 1 page.


Double repechage for 16 players, 1 page.


Double repechage for 64 players, 3 pages.



You can draw and write any texts on the sheets, but when you want to have for example a competitors name you write a tag. Tags are text strings starting with the letter %. Example: you want to write the last and first names of the competitor #3:


Result is “Smith John”. Add club and country:




Result will be “Smith, John Ippon Judo/GBR”.  It may be better to use bars (|) instead of quotation marks (') since some editors may change quotes to something else.

Tags have attributes. Many times they are composed of a string or a letter followed by a number. You can write them attached to each other: %m23p1 (match 23, player 1). If letters or numbers are missing you have to use a dash to separate the attributes: %c7first-s-last.  You can use dash any time for clarity.

The following table describes the available tags.

Competitor related tags



Tags start with %c and the number of the competitor.



Number of wins in the pool systems.



Number of points in the pool systems.



Result (place) in the pool systems.



In a three pool system a capital C denotes the final pool while a lower case c denotes the first pools. Otherwise the tags are the same.

%c<number><name attributes>
Name attributes are
<optional number>
'<any text>'
<any text>|

Name attributes describe information about the competitor. There are attributes for the first and last names, grade, club, country, and weight. Letter s writes a single space. Special attribute hm describes what to do if the competitor has a hansoku-make. Optional argument affects to the behavior:

hm1: Start strikethrough.

hm2: Don't write anything.

hm: Back to normal.

You can have any text between quotation marks. Example:

%c7-first-s-last' Country: 'country

would write

John Smith Country: GBR

Match related tags



Tags start with %m and the number of the match.


%m<number>-<number><name attributes>

The second number denotes the competitor whose name is to be printed.
1 = the first player (nowadays white)
2 = the second player (blue)
Name attributes are the same as with the %c.




Points of the player 1 or 2.




Print points of the player 1 or 2 if the match has been fought.




Print <text> if competitor's points are <value> otherwise print points


(print LOST if white's points in match #23 are 0)



Print <text> if competitor's points are <value> otherwise print nothing




Print <text> if competitor's points are <value> otherwise print points but only if the match has been fought



Match time

%m<number>winner<name attributes>

Write name of the winner of the match.



Same as %m<number>p<number> except IWY/S score is printed. Also other forms apply.

Result related tags


%r<number><name attributes>

Write the name of the competitor who's place is <number>


Tournament information related tags



Tournament's name






Name of the category


Number of category's contest area

Multilingual texts related tags



Numbers for the phrases are:

0: Competitors
1: Competitors A
2: Competitors B
3: Competitors C
4: Competitors D
5: # (number)
6: Name
7: Grade
8: Club
9: Matches
10: Matches A
11: Matches B
12: Matches C
13: Matches D
14: Match
15: Blue
16: White
17: Result
18: Results
19: Time
20: Wins (short word for wins)
21: Pts (short word for points)
22: Pos (short word for position)
23: Previous winner
24: Next
25: Weight:
27: weighin-notes.pdf (a file name)
28: schedule.pdf (a file name)
29: categories.pdf (a file name)
30: Category
31: Next fights
32: Categories
33: Statistics
34: Medals
35: Total
36: Country

Print a text using the selected language.


Score Legends

JudoTimer can send information about how the fight was won, i.e. ippon as a result of a throw, choke etc. These legends can be shown on the bracket sheets. Two methods exist. Common to both is that the text tags are not used any more. It is important to set correct IDs (names) for the graphical elements. For example SVG code for a rectangle looks like this:

<rect id=”my-id” x=”100” y=”200” …/>

IDs are used to distinguish between legends and their placements.

Legends in a File

Create a file legends.svg in the same directory where the sheet files are. Create all the legends you want and a “no legend” picture (white rectangle). Size of the legends doesn't matter. Set their IDs. The following table lists British legends:





Legend not known or no legend



Ippon as a result of a throw



Ippon as a result of a hold



Ippon as a result of a choke



Ippon as a result of an armlock



Win by Sogo-Gachi



Win by direct Hansoku-Make



Win by Kiken-Gachi



Win by Waza-Ari Throw



Win by Waza-Ari Hold



Win by Superiority (Yuko/Hantei)



Win by penalty against (against opponent)



Win by Fusen-Gachi



Example: Legend #1 is a letter T surrounded by a circle. It is important to group those and set the ID of the grouping element. SVG code should look like this:

<g id=”legend1” ...>
   <circle id=”circle345” x= .../>
   <text id=”text123” x= ...>T</text>

In your bracket sheet you mark places for the legends using a rectangle. Rectangles may be visible or invisible according to your preferences. Size of the rectangle determines the size of the legend. ID format for the rectangles is letter 'm' followed by a match number followed by letter 'l':
m<match number>l
Legend is always shown. If you want to show the legend only when the first player (white) has won use ID = m<match number>l-1 and when the second player (blue) has won use ID = m<match number>l-2.

For example m1l is the ID for the first match, m2l for the second match etc. Show legend for the match #23:
<rect id=”m23l” x=”100” .../>

Show a legend for match #23 if the second player has won:
<rect id=”m23l-2” x=”100” .../>

Embedded Legend Definitions

Legend definitions can be embedded in the SVG file. Idea is to use references to the definitions. You need proper software to do this, like free Inkscape (Adobe Illustrator wouldn't do).

Create all the legends on top of each other. Draw them in a convenient place where they are not visible or cover them with a white square. Legends must have IDs lgnd0, lgnd1, etc. Finally create a dummy legend whose ID is lgnd (this can be the white rectangle that covers the other legends).

Clone the dummy legend to the places where you want the real legends to appear. Cloning is not copying: it creates a reference to the real object. In SVG file it looks like this:


Reference will be replaced by a reference to the real legend. Before that the software must know the match number in question. It can be made known by grouping the cloned object and giving the group an ID match<number>. Example:

<g id="match3" ...
   <use xlink:href="#lgnd" ...

Legend for the match #3 will be drawn no matter who won the fight. If you want to draw a legend only when the first player (white) has won use ID = match3-1 and for the second player (blue) ID = match3-2.