Ethereal-dev: Re: [ethereal-dev] The next version of Ethereal?

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <guy@xxxxxxxxxx>
Date: Fri, 3 Dec 1999 12:50:21 -0800 (PST)
> Would the XUL project from Netscape's Mozilla be of any
> use in this regard?  XUL is basically an XML based way
> of constructing user interfaces:
> http://www.mozilla.org/xpfe/

The home page for Glade, a GTK+ user interface builder:

	http://glade.pn.org/

seems to imply it can produce XML interface description files:

	Glade can produce C source code itself.  C++, Ada95, Python &
	Perl support is also available, via external tools which process
	the XML interface description files output by Glade (see the
	Links page).

That might imply that the XML gets turned into C++ code for C++ support,
except that the Links page points to a page with information about
various bits of software including "libglade":

	http://www.daa.com.au/~james/gnome/

which "is a library that performs a similar job to the C source output
routines in the GLADE user interface builder.  Whereas GLADE's output
routines create C code that can then be compiled, libglade builds the
interface from an XML file (GLADE's save format) at runtime.  This way
you can change the look of a program without needing to recompile."

I wonder if there's any page that lists XML-based projects that don't
involve just making Boring Old Documents with it? I think there may be
more than one project to use XML as a format for configuration files,
and there's a page at

	http://www.geocities.com/ResearchTriangle/Forum/6751/

for an interesting project "devoted to changing the UNIX de facto
standard for inter-process communication and storage from line-based
ASCII records to XML", so that, for example:

	ls -l --xml /

would produce output such as

	<?XML version="1.0" ?>
	<!DOCTYPE UNIX>
	<COLLECTION>total 51
	<DIRECTORY NAME="bin" MODE="755" USER="root" GROUP="root" SIZE="2048"
	MODIFIED="922062673l" >drwxr-xr-x 2 root root 2048 Mar 22 1999
	bin</DIRECTORY>
	<DIRECTORY NAME="boot" MODE="755" USER="root" GROUP="root" SIZE="1024"
	MODIFIED="917089762l" >drwxr-xr-x 2 root root 1024 Jan 23 22:09
	boot</DIRECTORY>
	<FILE NAME="bootsect.lnx" MODE="644" USER="root" GROUP="root" SIZE="512"
	MODIFIED="922025029l" >-rw-r--r-- 1 root root 512 Mar 22 1999
	bootsect.lnx</FILE>
	.......
	</COLLECTION> 

and you could have programs such as "sort" and terminal emulators
understand the data; for example, the "How it Works" section:

	http://www.geocities.com/ResearchTriangle/Forum/6751/#anchor4

whence that came, says:

	An XMLterm can be programmed so that when you click on a directory such
	as "/tmp", it tells the shell to "cd /tmp".

	Also "XMLsort" can sort on the size of a file directly since the
	XML output of "ls" explicitly identifies the size by the tag. 
	i.e.  instead of

	ls -l / | sort -n +4

	you have: 

	ls -l --xml | XMLsort -size

The "Downloads" section has source code to a modified "ls" that can
produce XML, an XML grep called "sggrep" (I don't know if the "sg"
implies it can handle the stuff they removed from SGML to makL or
not), and a terminal emulator.