<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Stuart,<br>
    It´s nice to know that others use other operating systems and would
also like to use my program.  I am already well into programming it and
being that I am revamping another program I had written in VB I have
decided that I will stick with VB.  I had come across Mono a while back
and had the impression that it was just for ASP.Net Architecture for
web pages but I have since looked at it again and you are right it does
support the Forms architecture too though it doesn't support all of it
yet.  Once I finish the program I will look into porting it.<br>
   Thanks for your comments as have always used Windows and have very
rarely come across anybody who uses Linux or Mac and therefore don't
know much about them nor that some of you use these regularly.<br>
<br>
Jonathan<br>
<br>
Stuart Thiessen wrote:
<blockquote
 cite="mid:5279169E-5B0A-4ED4-A01E-78AD7A0E2505@passitonservices.org"
 type="cite">Hi! Actually, there are other alternatives to a web-based
approach. You can use programming languages such as Perl, Python, or
Java to create programs that can run on multiple platforms and that do
not require the web. For example, their is an excellent opensource sign
language research tool called ELAN which allows researchers to analyze
video clips of sign languages and make various annotations of the video
clips for their research. It is written in Java and is available for
Windows, Mac, and Linux. Certainly, there are pros and cons and give
and take that happens when you program so that it works on multiple
platforms. But Web-based programming as the only cross-platform
programming approach is a common misconception. It is certainly one of
the options which is what Steve picked for his approach. I'm sure
whatever you create will work well on Windows, but it will be useless
to those of us not on that platform. WIth such a diverse group that we
are, I personally tend to encourage programming approaches that focus
on being available on multiple platforms so that everyone can benefit
without having to purchase another computer just to benefit from a
program. I just think that's a wiser use of resources and it doesn't
take any extra effort other than learning a programming language that
can actually work on multiple platforms. All of the languages I have
mentioned are free, so it will cost nothing to install their IDE's and
work with them.
  <div><br class="khtml-block-placeholder">
  </div>
  <div>If you decide to stick with VB, I suggest you explore Mono. That
is an open source way to run .NET programs. That might be one way to
make it available for other platforms. But I have never done that
myself, so I am not sure how that works.
  <div><br class="khtml-block-placeholder">
  </div>
  <div>Thanks,</div>
  <div><br class="khtml-block-placeholder">
  </div>
  <div>Stuart</div>
  <div><br>
  <div>
  <div>On 25 Jun 2007, at 22:15, Jonathan wrote:</div>
  <br class="Apple-interchange-newline">
  <blockquote type="cite"> Hi Stuart,<br>
    My current plans for my program are Windows only.  But if there is
a way down the road to run it or port it to Linux or even Macintosh,
then I might look into it.  The only way to make work well on every
platform is for it to be on the web like SignPuddle.  But SignPuddle
already exists and if my program was web based, many people who don't
have access or can't be connected very long couldn't make very much use
of it.  There are advantages and disadvantages to each programming
style.<br>
    <br>
Jonathan<br>
    <br>
Stuart Thiessen wrote:
    <blockquote
 cite="mid:5FEF1033-B9C1-4023-B545-1E652327528B@passitonservices.org"
 type="cite">Having a VB program would be interesting, but it would not
be accessible to those of us on other platforms such as Macintosh or
Linux, would it?
      <div><br class="khtml-block-placeholder">
      </div>
      <div>Thanks,</div>
      <div><br class="khtml-block-placeholder">
      </div>
      <div>Stuart</div>
      <div><br>
      <div>
      <div>On Jun 12, 2007, at 14:00, Jonathan wrote:</div>
      <br class="Apple-interchange-newline">
      <blockquote type="cite"> Hi Steve,<br>
        <br>
Steve Slevinski wrote:
        <blockquote cite="mid465D9D2D.2070309@signpuddle.net"
 type="cite"> Hi Jonathan,<br>
          <br>
You are right that we need a general format for importing / exporting
between SignWriting applications.  I'd say that we should clean up
SWML-S.  I was also working on a SignPuddle Markup Language that I used
internally to import the 1.0 dictionaries into 1.5.  I never finalized
the DTD.<br>
          <br>
One question...  Should we have 2 different formats?  One for
dictionaries and another for documents?  It might make sense to be able
to embed the document markup inside of the dictionary markup, since
signs can now have documents attached.<br>
        </blockquote>
I would prefer 2 different formats.  This would make it easier to the
end user to know if they are dealing with a dictionary listing or a
document.  But we could make the internal markup quite similar.<br>
        <blockquote cite="mid465D9D2D.2070309@signpuddle.net"
 type="cite"><br>
I  need to improve the export feature in SP1.5.  It should export in a
variety of formats.<br>
          <br>
SBML is for importing into SignBank and below is my rational for using
the comma delimited strings.  <br>
          <br>
Image Importing<br>
---------------------<br>
SignBank uses images in the FileMaker database for the signs.  However,
there is no way to import images into SignBank using XML.  </blockquote>
Including images in XML isn't very common.  But I did find some
articles that explain how.  The image is converted to base64 and stored
in the XML.  SignBank can't do that so it made sense to just keep the
build string together since that's what SignBank needed to get the
picture in the first place.  <br>
        <blockquote cite="mid465D9D2D.2070309@signpuddle.net"
 type="cite">The round about solution we found was that FileMaker can
grab an image off of the internet.  So SBML includes the build string
and SignBank opens a web image with the build string as a query value.<br>
          <br>
Example build string:<br>
01-01-001-01-01-01,5,5,02-01-001-01-01-01,70,15<br>
          <br>
Web image:<br>
          <a moz-do-not-send="true" class="moz-txt-link-freetext"
 href="http://www.signbank.org/signpuddle1.5/image.php?build=01-01-001-01-01-01,5,5,02-01-001-01-01-01,70,15">http://www.signbank.org/signpuddle1.5/image.php?build=01-01-001-01-01-01,5,5,02-01-001-01-01-01,70,15</a><br>
          <br>
SignSpelling Sequences and sorting<br>
---------------------------------------------<br>
I've been sort the SignSpelling Sequences as strings.<br>
          <br>
01-01-001-01-01-01,01-01-001-01-01-08,<br>
01-01-001-01-01-01,02-01-001-01-01-08,<br>
01-01-001-01-01-01,06-01-001-01-01-01,<br>
          <br>
Since SBML already used the comma delimited build string, I didn't see
a problem with throwing in the sequence as a comma delimited string as
well.<br>
          <br>
I'm not sure how SignBank is storing the sequence in the database, but
Todd Duell was able to use SBML as I created it so I left it alone.<br>
        </blockquote>
Thanks for explaining.
        <blockquote cite="mid465D9D2D.2070309@signpuddle.net"
 type="cite"><br>
Just a bit of background,<br>
-Steve<br>
          <br>
Jonathan wrote:
          <blockquote cite="mid:465C92A5.2030606@yahoo.ca" type="cite">
Hi Steve,<br>
            <br>
Steve Slevinski wrote:
            <blockquote cite="mid4653A6D2.80603@signpuddle.net"
 type="cite"> Hi Jonathan,<br>
              <br>
The gloss should be a tag and not an attribute.  It looks like your
example comes from the SignPuddle 1.0 export, which does not follow the
DTD.  That's a defect.<br>
              <a moz-do-not-send="true" class="moz-txt-link-freetext"
 href="http://www.signbank.org/signpuddle/swml/swml-s.dtd">http://www.signbank.org/signpuddle/swml/swml-s.dtd</a><br>
              <br>
Jonathan wrote:<br>
              <blockquote cite="mid:46539851.9050806@yahoo.ca"
 type="cite"> I image that the "gloss" tag was meant so that there
could be several glosses per sign. Is this right? If it is so then the
"symbol" tags should be withing the "gloss" tag or else we won't know
which "symbol" tag belongs to which "gloss" tag.  It isn't enough that
the "gloss" tag come first. <br>
              </blockquote>
              <br>
Each sign can have multiple glosses and multiple symbols.  The glosses
and symbols are not directly related.  The symbols make up the sign. 
And the gloss describes the sign in English words.  <br>
              <br>
For example, the sign for the ASL number one has a single symbol, but
multiple glosses.<br>
<sign><br>
  <gloss>one</gloss><br>
  <gloss>1</gloss><br>
  <gloss>uno</gloss><br>
  <symbol x="1" y="1">01-01-001-01-01-01</symbol><br>
</sign><br>
              <br>
            </blockquote>
I had misunderstood the reason for the gloss tag.  Thank you for the
explanation.  It makes sense to me know.<br>
            <blockquote cite="mid4653A6D2.80603@signpuddle.net"
 type="cite"><br>
              <blockquote cite="mid:46539851.9050806@yahoo.ca"
 type="cite">My other comment about SBML which I realized was made
especially for SignBank which I am sure works just fine.  But SBML uses
comma separated values.  Which are fine, I use them all them time.  But
I feel that they are out of context in an XML file.  As is I can load
the SBML into objects or a dataset but I still have to parse the build
and the sequence to get to the information.  But if each comma
separated value has it's own tag, it will load just as fast into an
object or dataset and I don't have to do any parsing to get at the
information.  So for a SignWriting exchange format, I strongly suggest
staying away from comma delimited strings.<br>
                <br>
              </blockquote>
Hmm.  I can understand your feeling.  I'm not sure which style I'm
going to use for STML.  I should probably use the verbose tag style,
but I've never had a case where I was glad I chose the verbose style
over the build format for SWML-S.  <br>
            </blockquote>
Is this because you find it easier working with comma delimited
structures than objects?  I understand your point.  Especially if you
don't have an easy way to load the XML into the object or dataset.<br>
            <br>
This what I have figured out about XML so far.<br>
            <br>
The free IDE for Visual Basic, Microsoft Visual Basic 2005 Express
Edition, has a command line program that will analyze an XML file and
determine it's schema.  I was playing around with the SBML format a
while ago and using extensive search and replace,  converted it to an
all tag format.  See attached file sbml.xml<br>
            <br>
I didn't split up the detail though.  Then I ran it through <span
 id="nsrTitle">XML Schema Definition Tool </span>to create the schema.
See attached file sbml.xsd<br>
            <br>
Then I ran the schema specifying that I wanted it to give me a dataset
in VB.  See attached file sbml.vb<br>
I used the <MSHELP:LINK tabindex="0"
 keywords="frlrfSystemDataDataSetClassReadXmlTopic">System.Data.DataSet.ReadXml</MSHELP:LINK>
method.<br>
            <br>
I managed to import the whole ASL dictionary into my program this way.<br>
            <br>
It can also do classes for objects. <br>
I did one for you.  See attached file sbml-object.vb<br>
Then use the <MSHELP:LINK tabindex="0"
 keywords="frlrfSystemXmlSerializationXmlSerializerClassDeserializeTopic">System.Xml.Serialization.XmlSerializer.Deserializer</MSHELP:LINK>
method to read the XML file.<br>
            <br>
The code to load the SBML into the object is<br>
        Dim mySbml As sbml<br>
        ' Construct an instance of the XmlSerializer with the type<br>
        ' of object that is being deserialized.<br>
        Dim mySerializer As Xml.Serialization.XmlSerializer = New
Xml.Serialization.XmlSerializer(GetType(sbml))<br>
        ' To read the file, create a FileStream.<br>
        Dim myFileStream As IO.FileStream = _<br>
        New IO.FileStream("E:\Mis Documentos\Jonathan\Visual Studio
2005\Projects\Handwriting\IMWA\bin\Debug\sbmlnew.xml", IO.FileMode.Open)<br>
        ' Call the Deserialize method and cast to the object type.<br>
        mySbml = CType( _<br>
        mySerializer.Deserialize(myFileStream), sbml)<br>
            <br>
The results of the object look like the attached file "Loaded SBML
object.png".  Then you can use code to work with the object just as you
would any other object.<br>
            <br>
It is just as easy to go the other way too.  Object or Dataset to SBML.<br>
            <br>
With the xsd.exe utility, you can also choose from <b>CS</b> (C#,
which is the default), <b>VB</b> (Visual Basic), <b>JS</b> (JScript),
or <b>VJS</b> (Visual J#). <MSHELP:LINK tabindex="0"
 keywords="frlrfSystemCodeDomCompilerCodeDomProviderClassTopic"><br>
            <br>
            </MSHELP:LINK>Jonathan<br>
          </blockquote>
        </blockquote>
        <div class="moz-signature">
        <div class="moz-signature">
        <address><font face="Comic Sans MS"><big><br>
        </big></font></address>
        </div>
        </div>
      </blockquote>
      </div>
      <br>
      </div>
    </blockquote>
  </blockquote>
  </div>
  <br>
  </div>
  </div>
</blockquote>
</body>
</html>