[jawsscripts] Re: Introducing HomerJax script library for accessing Internet data

  • From: "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx>
  • To: <jawsscripts@xxxxxxxxxxxxx>
  • Date: Wed, 5 Aug 2009 13:51:54 +1000

yeah Jamal your amazing!

how do you do all this stuff man!  I mean, your brain! doesn't it explode?
mine would've years ago.

I've sent this on to Jim snowbarger as well, and he's very interested in it
right now aas his company's about to introduce some java application with a
browser interface, which he envisages this package might help him suss
through.

Do you think it could Jamal?

----- Original Message ----- 
From: "Donald Marang" <donald.marang@xxxxxxxxx>
To: <jawsscripts@xxxxxxxxxxxxx>
Sent: Wednesday, August 05, 2009 4:29 AM
Subject: [jawsscripts] Re: Introducing HomerJax script library for accessing
Internet data


> It might take me a while to get my head around this package.  I can
imagine
> a few examples I want to tackle where these functions would come in handy.
> I will probably try to understand Webrequest functions first.  Thanks for
> making this package available!
>
> Don Marang
>
>
> ----- Original Message ----- 
> From: "Jamal Mazrui" <empower@xxxxxxxxx>
> To: <JAWSScripts@xxxxxxxxxxxxx>
> Sent: Monday, August 03, 2009 3:27 PM
> Subject: [jawsscripts] Introducing HomerJax script library for accessing
> Internet data
>
>
> >I have created a JAWS script library for accessing Internet resources
> > called HomerJax, available at
> > http://EmpowermentZone.com/HomerJax.zip
> >
> > It is a collection of JavaScript functions that become available to JAWS
> > scripts via the files HomerJax.jsb and HomerJax.wsc.  No COM server has
to
> > be registered to access the HomerJax object and its many methods.
> >
> > HomerJax.jss currently contains two functions:  CreateHomerJax() for
> > creating the object, and HomerJaxDemo() for running an interactive demo
of
> > its capabilities.  The demo shows how you can get the content type,
source
> > HTML, or plain text of a web page; download a file to disk; get public
> > messages from Twitter.com, or post a tweet if you have an account.  The
> > code accesses data in JSON format (JavaScript Object Notation) as well
as
> > in XML.  The demo may be run by launching Notepad and pressing
> > Alt+JAWSKey+D.
> >
> > Documentation is in the files HomerJax.txt and HomerJax.htm.  For ease
of
> > learning more via this email message, I am pasting the initial sections
of
> > documentation below.
> >
> > I credit list members:   Bryan Garaventa for information on the
> > MSXml2.XMLHTTP object, and Martin Slack for information on the
> > System.Collections.ArrayList object.
> >
> > Jamal
> >
> > HomerJax
> > Beta 0.6
> > August 3, 2009
> >
> > Copyright 2009 by Jamal Mazrui
> > GNU Lesser General Public License (LGPL)
> >
> > Contents
> >
> > Introduction
> > Overview
> > COM Exchange Format
> > Dialog Methods
> > File Methods
> > Folder Methods
> > HTML Methods
> > JScript Data Methods
> > Path Methods
> > Regular Expression Methods
> > Registry Methods
> > Shell Methods
> > String Methods
> > Variant Data Methods
> > Web Request Methods
> > XML Methods
> > Development Notes
> > ----------
> >
> > Introduction
> >
> > HomerJax is a library of convenience functions for accessing Internet
> > resources.  It is written in JScript, the Microsoft version of
JavaScript,
> > and is dependent on several COM servers distributed with Windows.  The
> > word "Homer" is a brand name I sometimes use for developer tools I
create.
> > The word "Jax" derives from Ajax, which originally meant "Asynchronous
> > JavaScript and XML."  Ajax technologies focus on building dynamic user
> > interfaces in web browsers.  HomerJax functions use some of these core
> > technologies, but focus on reading, interpreting, and writing data from
> > the Internet.
> >
> > Since the Internet is a great source of accessible information for
people
> > with visual disabilities who cannot readily read the printed word, my
hope
> > is that this library makes it easier for developers, including blind
ones
> > like myself, to build applications that take advantage of new social
> > networking sites such as Twitter, FaceBook, and many others.  I intend
for
> > HomerJax to be accessible via various programming environments,
including
> > the Windows Script Host, screen reader scripting languages, and other
> > programming languages via a COM server interface.
> >
> > A demonstration program is included that shows how you can easily get
the
> > content type, source HTML, or plain text of a web page; how you can
> > download a file to disk, how you can get messages from the public
timeline
> > of Twitter.com, or poast a tweet if you have a Twitter account.  The
demo
> > shows how data is converted from JavaScript Object Notation (JSON) to
what
> > I call COM exchange format, and how XML data may be conveniently
accessed
> > as well.
> >
> > The functionality and documentation of HomerJax will improve over time
in
> > response to comments, questions, and suggestions.  Code contributions
are
> > also welcome.
> > ----------
> >
> > Overview
> >
> > HomerJax methods are divided into categories indicated by a prefix at
the
> > beginning of their names:  Dialog, File, Folder, Html, Js, Path, RegExp,
> > Registry, String, Vt, Web, and Xml.  By convention, HomerJax variable
> > names use lower case prefixes to indicate the data type:  s for string,
i
> > for integer, n for floating point number, l for list, d for dictionary,
> > and o for other COM object.  Method and variable names use upper camel
> > case (like the .NET Framework), e.g., XmlGetValue rather than
XMLGetValue.
> > JavaScript is a case-sensitive language, so methods need to be called
with
> > appropriate capitalization.
> > ----------
> >
> > COM Exchange Format
> >
> > The Component Object Model (COM) is a set of Windows standards by which
> > different programming languages and applications can communicate.  COM
> > uses a flexible data type called a variant, which can be an individual
> > value, array of values, or complex object with methods, properties, and
> > events.  In general, any COM client can use string, numeric, and COM
> > objects as the data types of parameters or return values.  Some,
however,
> > cannot use arrays.  COM exchange format is intended to support
> > collections, as well as primitive data types, for use by any COM client.
> > Rather than an array, a list COM object is used from the .NET Framework
> > (any version).  A COM object dictionary is also used from the Windows
> > Script Host.
> >
> > HomerJax includes a method called JsToVt, which converts data in JSON
> > format to variant types understood by JAWS  Script (or any COM client
> > language).  JavaScript arrays are converted to COM objects with the
progID
> > "System.Collections.ArrayList."  The methods and properties of this
object
> > are documented at
> >
http://msdn.microsoft.com/en-us/library/system.collections.arraylist.aspx
> >
> >  JavaScript objects, which are like dictionaries, are converted to COM
> > objects with the progID "Scripting.Dictionary."  This object is
documented
> > at
> > http://msdn.microsoft.com/en-us/library/x4k5wbx4(VS.85).aspx
> >
> >  In Visual Basic and other languages, either of these types of object
> > collections may be iterated with the "For Each" statement.  These
objects
> > have an "Item" method, which is the default COM method of the object, so
> > syntax can succinctly referr to items without even using the "Item"
> > keyword (just using an integer element of a list or string key of a
> > dictionary enclosed in parentheses).  The code of the demo program
> > illustrates this in getting public messages from Twitter.
> >
> > HomerJax includes various methods for converting between JavaScript
Object
> > Notation (JSON), variant data types, and COM exchange format.  This
> > provides much flexibility for accessing data on the Internet.
> >
> > ...
> >
> >
> > __________
> > Visit and contribute to The JAWS Script Repository
http://jawsscripts.com
> >
> > View the list's information and change your settings at
> > http://www.freelists.org/list/jawsscripts
> >
>
> __________
> Visit and contribute to The JAWS Script Repository http://jawsscripts.com
>
> View the list's information and change your settings at
> http://www.freelists.org/list/jawsscripts
>

__________ 
Visit and contribute to The JAWS Script Repository http://jawsscripts.com

View the list's information and change your settings at 
http://www.freelists.org/list/jawsscripts

Other related posts: