<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi Honza,<br>
<br>
FSW is a light markup that stands for Formal SignWriting which is
used as the regular searching form. It is documented in section 9
of the Modern SignWriting specifications. PDF link:
<a class="moz-txt-link-freetext" href="https://github.com/Slevinski/msw/raw/master/MSW.pdf">https://github.com/Slevinski/msw/raw/master/MSW.pdf</a><br>
<br>
FSW is my preferred storage form because it is possible to quickly
search for exact or approximate matches. It contains the same
information as the XML. The string is predictable and easy to
process with regular expressions or even basic string functions.<br>
<br>
The first difference is the use of symbol keys rather than symbol
IDs. The conversion between these 2 standards can be accomplished
with the ISWA 2010 database or one of 2 text files.<br>
<br>
The verbose text file is just under 1 MB. It contains an explicit
list of symbol IDs to symbol keys, such as <br>
<a class="moz-txt-link-freetext" href="http://signpuddle.net/iswa/data/iswa_id_key.txt">http://signpuddle.net/iswa/data/iswa_id_key.txt</a><br>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<pre>01-01-001-01-01-01,10000
01-01-001-01-01-02,10001
01-01-001-01-01-03,10002
01-01-001-01-01-04,10003
01-01-001-01-01-05,10004
01-01-001-01-01-06,10005
</pre>
<br>
<div class="moz-cite-prefix">The minimalistic text file is 11 KB.
It contains an explicit list for the symbol prefix (BaseSymbol
part), but not the entire ID or key. The conversion of the fills
and rotations is trivial and handled by the code.<br>
<a class="moz-txt-link-freetext" href="http://signpuddle.net/iswa/data/iswa_sym_base.txt">http://signpuddle.net/iswa/data/iswa_sym_base.txt</a>
<pre>01-01-001-01,100
01-01-002-01,101
01-01-003-01,102
01-01-004-01,103
01-01-005-01,104
01-01-006-01,105</pre>
<br>
Let's consider the most basic example.<br>
<br>
<img src="cid:part1.07070202.08080100@signpuddle.net" alt=""><br>
<br>
<b>XML with symbol ID</b><br>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<signbox max_x="8" max_y="15"><br>
<sym left="-7" top="-15">01-01-001-01-01-01</sym><br>
</signbox><br>
<br>
<b>XML with symbol key</b><br>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<signbox max_x="8" max_y="15"><br>
<sym left="-7" top="-15">S10000</sym><br>
</signbox><br>
<br>
<b>FSW</b><br>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
M508x515S10000493x485<br>
<br>
The first thing to notice is that the coordinates of FSW are
offset by 500 for each coordinate number.<br>
<br>
The XML segment: (max_x="8" max_y="15") is equal to the FSW
segment "508x515".<br>
<br>
Each symbol has it's own coordinate placement. So we can break up
the FSW string as follows:<br>
M 508x515 S10000 493x485<br>
<br>
The M stands for the middle lane. The other options are L for
left, R for right, and B for signboxes used in horizontal writing.<br>
<br>
For signs with that have a signspelling sequence, the signbox
information described above is preceded by an A section as a list
of symbol keys without coordinate information.<br>
<br>
Here is a longer example:<br>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
AS10000S10e00S11e00M547x516S10000454x486S10e00489x486S11e00524x485<br>
<br>
It has 2 sections. The first section is the signspelling
sequence:
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
A S10000 S10e00 S11e00<br>
<br>
The second section is the signbox construction: M 547x516 S10000
454x486 S10e00 489x486 S11e00 524x485<br>
<br>
Which can be understood as:<br>
M 547x516 = middle lane with max coordinate of (47,16)<br>
S10000 454x486 = symbol ID
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
01-01-001-01-01-01 at coordinate (-46,-14)<br>
S10e00 489x486 = symbol ID 01-02-001-01-01-01 at coordinate
(-11,-14)<br>
S11e00 524x485 = symbol ID 01-03-001-01-01-01 at coordinate
(24,-15)<br>
<br>
If you've made it this far and you absolutely don't want to use
FSW for the custom export, I should be able to add an XML sign
data option for the custom export only, but the XML sign data
option will not be available for the entire puddle exports.<br>
<br>
Hope that helps,<br>
-Steve<br>
</div>
</body>
</html>