As I mentioned on code4lib, I'm converting a PHP class I wrote that screen-scrapes Innovative catalogs to match the DLF ILS-DI tech recommendations.
My first question (kinda long, sorry) has to do with the apparent difference between how 'GetAvailability' and 'GetRecords' treat item and holding information.
The spec says that 'GetAvailability' should return a list of 'item availability objects'. Cool. But then 'GetRecords' and 'Search' say that I should include holdings and item information together with the bibliographic record in the specified schema. Is that right?
So, if the calling code invoking 'GetRecords' or 'Search' specifies the schema as MARC-XML, for example, should I include item and holding information in the bibliographic record, like in an 852 (or similar) field? Or should that data be separate from the bibliographic record, but also in MARC-XML?
The spec says that I should include item and holdings information 'unless the specified return schema does not support it'. But then section 6.4.2 and Appendices 2 and 3 show examples where holdings and item information are in a different schema altogether from the bib record, like NCIP or ISO holdings.
It seems to me that 'GetRecords' and 'Search' should return a list of Record objects that would contain, say, three properties: (a) the bibliographic record, (b) an array of item availability objects, and (c) an array of (not defined in the recommendation) holdings objects. The 'schema' parameter, then, should *only* apply to the bibliographic record.
It would then be up to the calling code to convert the item availability and holding objects into the appropriate XML schema (e.g., ISO Holding or NCIP), situating them together with the bib record using the <dlf: /> wrapper elements, should the calling code be implementing a web service.
That would make those functions behave more like 'GetAvailability', I think.
Or am I just misunderstanding this?
--Dave
==================
David Walker
Library Web Services Manager
California State University
http://xerxes.calstate.edu
They'll go under dlf:record/dlf:items and use ISO holdings format.
In addition, the dlf:simpleavailability child provides a summary of
the availability status of the items.
See the earlier thread (-> mailing list archives) regarding why our
current thinking discourages Marc 852 use.
- Godmar
Tim
--
Tim McGeary
Senior Systems Specialist
Lehigh University
tim.m...@lehigh.edu
610-758-4998
timmc...@gmail.com
Google Talk: timmcgeary
Yahoo IM: timmcgeary
Tim
--
Tim McGeary
Senior Systems Specialist
Lehigh University
tim.m...@lehigh.edu
610-758-4998
timmc...@gmail.com
Google Talk: timmcgeary
Yahoo IM: timmcgeary
Tim
--
Tim McGeary
Senior Systems Specialist
Lehigh University
tim.m...@lehigh.edu
610-758-4998
timmc...@gmail.com
Google Talk: timmcgeary
Yahoo IM: timmcgeary
My opinion: let's ignore that parameter for now and always return
expanded DLF records. This is simplest for our clients. Later on, we
can add/define the ability for a client to request a specific format.
Other people have different opinions. Compare, for instance, Peter's
implementation, which returns DLF records only if you ask for
"expanded" or "dlfexpanded" as the schema. In my view, that's not
ILS-DI - it's just a SRU (or whatever) server for records using some
schema. Mind you, it's great if people create SRU servers that
return, say MARC records - but ILS-DI's raison d'etre really is the
expanded format. That's what will provide the information and
interoperability that could make ILS-DI successful.
> The documentation seems to indicate that the schema parameter in those functions applies to *both* the bibliographic record and items/holdings data. But that doesn't seem right, since other parts of the documentation clearly show that bib and item records can (and in most cases likely will) be in two different schemas.
>
I see your point.
Presumably, if you requested some other schema that's not
DLF-expanded, you're not getting DLF records back but records in some
other schema (like your SRU implementations). Then, holdings and items
will occur - if they do occur - in however that other schema defines
them.
Again, my opinion is to implement 1 expanded format first which has
the information we need for our use cases now, then let's worry about
flexibility - where the client can request certain formats - later.
- Godmar
What are the current customs? Return serial holdings as "dlf:holdings"
and monograph holdings as "dlf:items"?
The alternative option would be to define a simplified view that does
away with this very library-specific and possibly unnecessary
distinction and use resources vs. items instead whereby an item can
represent either a "holdings records" for serials or an "item record"
for monographs. I think the ILS-DI wanted to keep their options open
by designing both dlf:holdings and dlf:items in their record format to
reflect common practice in the library world, however uneven it plays
out between libraries.
Ideas are appreciated.
- Godmar
I kid.
This discussion, while I don't want to discourage it, is probably
better suited for the ILS-DI group, since people there might know
better what was meant by that.
http://groups.google.com/group/ils-di
However, if you ask there, please cc this group.
The ILS-DI group defined a new schema, called ExpandedRecords, which,
I think is what they're calling for there.
http://onlinebooks.library.upenn.edu/schemas/dlfexpanded.xsd
-Ross.
On Fri, Jul 18, 2008 at 3:35 PM, Tim McGeary <timmc...@gmail.com> wrote:
>
You have a couple of choices here. Basically the "community profile"
process for ILSes (which would determine the lowest common
denominators for maximum interoperability) hasn't begun yet.
That being said, I think it's pretty much a given that Resources
should support MARCXML (and possibly MARC8/21/etc.). Designing a
Jangle-specific data format seems counterproductive.
Items are trickier and depend on if they're a serial item or not. I
raised the question a week or two ago about what data elements we'd
need for either, but didn't get much response. Let's try again.
First off, what's your use case? Monographic holdings (basically
items), serials holdings (basically coverage spans) or both?
I honestly think we can knock out monographic holdings in a day or two
if we start with something like ISO 20775 or DAIA and add some
location information and any other data we think they're leaving out.
Given that ISO 20775 is only available as a schema publicly (no spec
or HOWTOs or anything are available to the public) makes me a little
concerned about going down that path.
And... serials. Again, ISO should be able to handle this or ONIX-SOH.
Do you know what data elements you need for Prism?
Some use cases might make this simpler.
-Ross.
On Wed, 2008-07-23 at 09:49 -0400, Ross Singer wrote:
> Elliot,
>
> You have a couple of choices here. Basically the "community profile"
> process for ILSes (which would determine the lowest common
> denominators for maximum interoperability) hasn't begun yet.
>
> That being said, I think it's pretty much a given that Resources
> should support MARCXML (and possibly MARC8/21/etc.). Designing a
> Jangle-specific data format seems counterproductive.
>
> Items are trickier and depend on if they're a serial item or not. I
> raised the question a week or two ago about what data elements we'd
> need for either, but didn't get much response. Let's try again.
>
> First off, what's your use case? Monographic holdings (basically
> items), serials holdings (basically coverage spans) or both?
Serials holdings. We already have mono availability in a very
proprietary (but working for our purposes) form.
>
> I honestly think we can knock out monographic holdings in a day or two
> if we start with something like ISO 20775 or DAIA and add some
> location information and any other data we think they're leaving out.
>
> Given that ISO 20775 is only available as a schema publicly (no spec
> or HOWTOs or anything are available to the public) makes me a little
> concerned about going down that path.
>
> And... serials. Again, ISO should be able to handle this or ONIX-SOH.
>
> Do you know what data elements you need for Prism?
For Prism, we basically want to show (for serials):
- Location
- Shelfmark
- Details about the holding (e.g. which volumes)
- General notes/descriptive notes (I think they can be conflated, though
the ordering seems to matter to old Prism)
- "Wants" (e.g. "Wants: vol. 1, no. 2; vol. 2, no. 3") - this is
free-form text in Alto
We aren't covering lending of Talis "items" (which I don't think are
quite the same as FRBR items; basically they are physical copies), even
if serials have items catalogued against them.
Any suggestions you can provide would be gratefully received.
Elliot
>> First off, what's your use case? Monographic holdings (basically
>> items), serials holdings (basically coverage spans) or both?
>
> Serials holdings. We already have mono availability in a very
> proprietary (but working for our purposes) form.
>
Proprietary as in "company secret"? Or proprietary as in "specific to
our use case"? Can you disclose what data, and roughly how it's
defined?
You can see how good our company communication model is :)
>> Do you know what data elements you need for Prism?
>
> For Prism, we basically want to show (for serials):
>
> - Location
What would this be for electronic? "EBSCO Academic Search Premier" or
something?
> - Shelfmark
This is English for "Call number"?
> - Details about the holding (e.g. which volumes)
I would definitely lean more towards ONIX-SOH than MFHD for this...
> - General notes/descriptive notes (I think they can be conflated, though
> the ordering seems to matter to old Prism)
Well, this gets into an interesting point.
My mental picture of 'holdings' in Jangle are roughly thus:
- They are Items just like monographic Items
- They can be defined by an atom:category or something as a holding
-- I'm open to ideas for specifics here.
- The Items themselves are related to a particular span and
location. So if there are breaks in coverage, these would be separate
Item resources. Supplements might also fall into this category, if
they're cataloged conveniently.
The last part is assuming that the data is even available (location to
date span) in a machine readable way. If the holdings are just all
shoved in a single MARC field (whatever it is that pre-MFHD records
use), I'm not sure the best way to do this. Possibly a single Item
resource.
Thoughts?
> - "Wants" (e.g. "Wants: vol. 1, no. 2; vol. 2, no. 3") - this is
> free-form text in Alto
What exactly does "wants" mean? Are these missing? Or waiting to be
checked in?
>
> We aren't covering lending of Talis "items" (which I don't think are
> quite the same as FRBR items; basically they are physical copies), even
> if serials have items catalogued against them.
No, I think that's roughly what FRBR items are. Can anyone clarify?
-Ross.
-Ross.
For instance, I greatly prefer to get JSON back from the Yahoo APIs.
I would be less interested in JSON back from, say, an NCIP or SRU
service.
-Ross.
What I'd like to see is a participation by the ILS working group to
provide feedback to those people who are actually doing design and
writing code now. So far, I've seen only little of that. I found
this unfortunate, because us implementors do not have the luxury to
wait for whenever you decide to address the important decisions of
binding and implementation. If what we design and implement now is
ignored by the ILS-DI group, and if there are later attempt to
redesign interfaces and bindings, you're imposing unnecessary workload
on us.
In addition, you're not providing guidelines for vendors who may
actually attempt to implement this interface. You'll force them to
come up with their own, likely ad hoc designs and solutions. As a
result, interoperability of different implementations may be
jeopardized.
- Godmar