On Sep 11, 2012, at 03:27 , Fischlin Andreas <[email protected]> 
wrote:

> Dear Adam,
> 
> Many thanks. All the links to the source code you gave me helps me a lot to 
> understand the situation much better. A pity this is so elaborate.
> 
> In the meantime our case with Thomson Reuters resulted in directing us to a 
> web site, of which the answer e-mail claimed, it would supersede the sites we 
> discussed previously.

I did a few quick tests with Python and suds today to see how hard this would 
be.  

First, using the old WSDL gives an error saying that the service is no longer 
supported; this confirms what we suspected.  Not sure why BibDesk isn't showing 
that error, but we probably need to manually check for a fault.

Second, I'm not sanguine about getting this to work with Apple's framework, as 
TR has started using complex objects instead of simple (albeit messy) string 
parameters.  Explicit authentication is also required, and you have to pass an 
HTTP cookie back with each search/retrieve request.  I've not dealt with 
serializing and deserializing objects in Apple's Web Services framework.

The easiest option at this point is shipping suds inside BibDesk, then writing 
a command-line tool that would do the Web Service stuff and echo back XML.  
Unfortunately, it's LGPL v3 and I'm not sure that's compatible with BibDesk's 
BSD license.  It's also 500 kbytes of files, though that's not a deal breaker.  
Not sure that other devs think of it.  Using gSOAP is also an option, but not 
as easy.

> However, would it not be easier not to work with Mountain Lion first, in 
> particular to overcome the caveats of the new protocol? Say, using the 
> reliable Snow Leopard (or Lion, but I wouldn't use the word reliable in this 
> case ;-) ). Once understood it might work even under Mountain Lion?

OS version is irrelevant.  Apple's Web Service code likely won't work any 
differently under 10.8.  Code that is deprecated isn't necessarily going away 
right now (though the jerks at Apple broke DataTank by removing 
XgridFoundation.framework in 10.8, after deprecating it in 10.7).

> One further thought: Such SOAP like protocols 
> (http://en.wikipedia.org/wiki/SOAP_(protocol)) may be of interest also in 
> other cases.

BibDesk's DBLP search group also uses it.

> Would it not be more robust for BibDesk to develop a generic module that can 
> handle such queries while the syntax specifics of any given protocol are 
> described with a meta language, e.g. similar as attributed EBNF 
> (http://en.wikipedia.org/wiki/EBNF) this can do for programing languages. 
> Then BibDesk could be extended by any query by simply providing the protocol 
> description in form of that language?

You want a meta language on top of SOAP?  Forget it.  I'm not an expert, but 
IMO there's too much variety in Web Service interfaces to do something like 
that.  Generic isn't always better, and neither are layers of abstraction 
against a time when something might possibly be added (though I've perpetrated 
some of those).

Now, a workable solution might be to define an API for writing search group 
plugins in Python, much as we did with script groups (yes, I'm heavily biased 
towards Python).  In the case of Web Service clients, it would be easier for a 
3rd party to add/maintain/modify a search group.  When we talked about this 
several years ago, I think we concluded that it would be cool, but a waste of 
time because it's not likely that 3rd parties will go to that effort.

> What is your experience with these interfaces? Are they clean? Formally well 
> designed or are they all just tedious, cumbersome patchwork full of 
> idiosyncrasies?

Web Services interfaces are all over the map; some are good, some are bad, and 
others are just weird.  None of the services I've used has performed exactly as 
documented, but that's a fairly small sample size.

Adam


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Bibdesk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-users

Reply via email to