Of course, all these things _can_ be done with only client-side
it that way. And complexity is the enemy of maintainability, especially
in my limited staff resources library environment.
But perhaps my perspective is not sufficiently "2.0" (or "3.0"); I've
been a software developer for a long time, but doing client side
quite a bit more complex to try and provide these services with the same
level of control and customization in a "don't repeat yourself" modular
way accross all my various display systems that need this functionality,
Godmar Back wrote:
> On Mon, Mar 17, 2008 at 10:41 AM, Jonathan Rochkind <[log in to unmask]> wrote:
>> Well, the SFX architecture has a feature called "display logic" that
>> let's you on the server side determine how the menu will display based
>> on what services are available. This is more obviously relevant to
>> "digitized text availability" from Google Books than just cover images.
>> You might want to suppress ILL links if there is digitized text (in
>> fact, you probably wouldn't in that particular case, but that gives you
>> the idea of what things you might want to do. At least my library
>> wouldn't, maybe others with especially small ILL budgets might). Or
>> just give a pre-ILL warning message ("are you sure the Google text isn't
>> sufficient?), that might be more realistic.
>> Anyway, you obviously couldn't do this using the existing SFX display
>> logic feature if the Google Books info is only client side.
>> Now, "impossible?" In the world of software development, few things are
>> actually impossible. You could try to duplicate that feature using only
>> currently isn't that clean, it woudl be hard. But you have the
>> capability to customize the SFX HTML however you want to. (And your
>> customizations will likely break with a future SFX release). So
>> nothings impossible, but I wouldn't want to go down that road.
> Your particular requirement (hide the ILL link if Google has text) is
> easily implemented using the gbs classes: simply wrap the ILL link in
> a <span class="gbs-if-noview">...</span> and you're done. SFX will
> likely preserve such <span> tags across releases since it doesn't know
> what style you're applying.
> If I were you, I'd probably look for a server-side solution first,
> too, but let's discuss the architectural differences a bit more.
> You mentioned modularity and maintainability - I'd say that a
> client-side solution can be kept modular and maintainable as well - in
> your output page.
> In addition, client-side has significant advantages in both latency
> and scalability, in particular when mashing in data from a provider
> with a distributed architecture that has a degree of redundancy, and
> therefore availability, that is as high Google's.
> - Godmar
Digital Services Software Engineer
The Sheridan Libraries
Johns Hopkins University
rochkind (at) jhu.edu