[Pipet Devel] XML and Pise

Brad Chapman chapmanb at arches.uga.edu
Wed Jul 12 14:10:55 EDT 2000

Hi Raynald;
    Thanks for writing!

Raynald wrote:
> However, it seems that the Piper XML is not yet completely defined. 
I am
> working in the Pasteur Institute and there is a software called Pise:
> http://www-alt.pasteur.fr/~letondal/Pise/ written by Catherine 
> (letondal at pasteur.fr).

I really like Pise a lot, and there was actually a bit of discussion 
on the Loci list about it back when it was first GPLed. I've spent a 
lot of time since then looking through the mounds of perl code that 
make it up :-).

Raynald wrote:
> In two words, this is an interface builder. It makes HTML pages and 
> scripts for unix programmes related with Biology. My point is it 
uses XML to
> describe the program to be interfaced. This program is under GPL and 
> documented. I think it would be great if Piper and Pise could share 
the same
> DTD...

As Jeff mentioned, we do have a semi-permanent DTD working for Piper 
which is kind of a conglomeration between the old Loci XML format, and 
the way that Overflow does things. This is not yet permanent, but has 
been in place for a little while.
    That being said, there is still room for some flexibility (since 
I'm no stranger to rewriting code :-). A few months ago, I was really 
ready to just use the Pise DTD for Loci, actually. However, as I've 
got into Piper more and more I've realized that the Pise DTD isn't 
really meant for the kind of system Piper is trying to be. The big 
difference is that Pise is, as you mentioned, mostly concerned with 
being an interface generator. By contrast, Piper (in my mind) is less 
concerned with generating interfaces for specific programs, and a 
little more concerned with creating an interface to make connecting 
programs together more intutitive. 
    The Piper DTD mainly focuses around three elements: Parameters, 
Inputs and Outputs. The Pise DTD is mainly focused on the Parameter 
part of this, which makes a lot of sense, since it is designed to 
create specific GUIs. Pise does have a pipe element, which provides 
some support for piping output from one program into another, but this 
seems less developed then Piper is trying to be. This right here seems 
to be the major sticking point, since Pise would have to add on quite 
a few changes here to deal with this. You mentioned the possibility of 
"some" modifications of the part of Pise, but I would imagine these 
would be quite small, considering that Pise is already in use in quite 
a few places. It seems like adding on whole another Input and Output 
parts might not be favorable, but I don't know...
    There could probably be some reconciliation on the parameter 
attribute on our part, but the thing I'm most worried about here is 
that Jeff has been wanting to use BlueBox to do the generation of 
user interfaces, so I don't know if the Pise model would fit with 
this, since we haven't seen BlueBox yet. Did you have any ideas how 
the Pise and Piper models could be combined, now that you've seen both 

Jeff wrote:
>> Also, Piper is meant to be general-purpose, not biology-related 
(/Loci/ was
>> originally supposed to be biology-related).  I see some Pise tags 
>> "Sequence", which we wouldn't want to use.

Well, this isn't a big concern to me, since we are not forced to use 
all of the elements, and specific nodes that wanted to use biology 
related terms could use them. I guess we would have a danger of 
developing some huge monsterous DTD with lots of domain specific 
information in it, which would be a bad thing.

> What do you think of that ?

I think it is a really good idea, but am worried about the 
technical difficulties of doing it because of the differences in the 
goals of the two projects. Having read what I said, what do you think?


More information about the Pipet-Devel mailing list