right. thanks Jamal. I'll pass that on to jim. this is all way above my head as yet. ----- Original Message ----- From: "Jamal Mazrui" <empower@xxxxxxxxx> To: <jawsscripts@xxxxxxxxxxxxx> Sent: Thursday, August 13, 2009 2:15 AM Subject: [jawsscripts] Re: Introducing HomerJax script library for accessing Internet data > Thanks, Geoff. Regarding a browser environment and Java, HomerJax code > could be useful for tasks that do not involve accessing the local file > system, since the browser host prevents that subset of actions. Also, > JavaScript is a standardized language, but HomerJax makes use of COM > servers that are only available on Windows. Java is different from > JavaScript, though JavaScript and Java can communicate within a browser . > > Jamal > > On Wed, 5 Aug 2009, Geoff Chapman wrote: > > > Date: Wed, 5 Aug 2009 13:51:54 +1000 > > From: Geoff Chapman <gch@xxxxxxxxxxxxxxxx> > > Reply-To: jawsscripts@xxxxxxxxxxxxx > > To: jawsscripts@xxxxxxxxxxxxx > > Subject: [jawsscripts] Re: Introducing HomerJax script library for > > accessing Internet data > > > > 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 > > > __________ > 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