Print

Print


After having done numerous matching and mapping projects, there are some issues that you will face with your strategy, assuming I understand it correctly. Trying to match a heading starting at the left most subfield and working forward will not necessarily produce correct results when matching against the LCSH authority file. Using your example:

 

650 _0 $a Education $z England $x Finance

 

is a good example of why processing the heading starting at the left will not necessarily produce the correct results.  Assuming I understand your proposal you would first search for:

 

150 __ $a Education

 

and find the heading with LCCN sh85040989. Next you would look for:

 

181 __ $z England

 

and you would NOT find this heading in LCSH. This is issue one. Unfortunately, LC does not create 181 in LCSH (actually I think there are some, but not if it’s a name), instead they create a 781 in the name authority record. So to find the corresponding $z England we need to go to the name authority record 150 England with LCCN n82068148. Currently under id.loc.gov you will not find name authority records, but you can find them at viaf.org. The second issue using your example is that you want to find the “longest” matching heading. While the pieces parts are there, so is the enumerated authority heading:

 

150 __ $a Education $z England

 

as LCCN sh2008102746. So your heading is actually composed of the enumerated headings:

 

sh2008102746    150 __ $a Education $z England

sh2002007885    180 __ $x Finance

 

and not the separate headings:

 

sh85040989         150 __ $a Education

n82068148           150 __ $a England

sh2002007885    180 __ $x Finance

 

Although one could argue that either analysis is correct depending upon what you are trying to accomplish.

 

The matching algorithm I have used in the past contains two routines. The first f(a) will accept a heading as a parameter, scrub the heading, e.g., remove unnecessary subfield like $0, $3, $6, $8, etc. and do any other pre-processing necessary on the heading, then call the second function f(b). The f(b) function accepts a heading as a parameter and recursively calls itself until it builds up the list LCCNs that comprise the heading. It first looks for the given heading when it doesn’t find it, it removes the *last* subfield and recursively calls itself, otherwise it appends the found LCCN to the returned list and exits. This strategy will find the longest match. The headings are search against an augmented LCSH database where the 781 name authority records have been transformed into 181 records keeping the LCCN of the name authority record. Not ideal, but it generally works well. Adjust algorithm per need.

 

Hope this helps, Andy.

 

 

From: [log in to unmask] [mailto:[log in to unmask]] On Behalf Of Owen Stephens
Sent: Thursday, April 07, 2011 08:11
To: Thomas Meehan
Cc: Code for Libraries; public-lld; [log in to unmask]
Subject: Re: LCSH and Linked Data
Importance: Low

 

Thanks Tom - very helpful

Perhaps this suggests that rather using an order we should check combinations while preserving the order of the original 650 field (I assume this should in theory be correct always - or at least done to the best of the cataloguers knowledge)?

 

So for:

 

650 _0 $$a Education $$z England $$x Finance.

 

check:

 

Education

England (subdiv)

Finance (subdiv)

Education--England

Education--Finance

Education--England--Finance

 

While for 650 _0 $$a Education $$x Economic aspects $$z England we check

 

Education

Economic aspects (subdiv)

England (subdiv)

Education--Economic aspects

Education--England

Education--Economic aspects--England

	
	- It is possible for other orders in special circumstances, e.g. with language dictionaries which can go something like:
	
	650 _0 $$a English language $$v Dictionaries $$x Albanian.

 

This possiblity would also covered by preserving the order - check:

 

English Language

Dictionaries (subdiv)

Albanian (subdiv)

English Language--Dictionaries

English Language--Albanian

English Language--Dictionaries-Albanian

 

Creating possibly invalid headings isn't necessarily a problem - as we won't get a match on id.loc.gov anyway. (Instinctively English Language--Albanian doesn't feel right)

 

	
	- Some of these are repeatable, so you can have too $$vs following each other (e.g. Biography--Dictionaries); two $$zs (very common), as in Education--England--London; two $xs (e.g. Biography--History and criticism).

OK - that's fine, we can use each individually and in combination for any repeated headings I think

 

	- I'm not I've ever come across a lot of $$bs in 650s. Do you have a lot of them in the database?

Hadn't checked until you asked! We have 1 in the dataset in question (c.30k records) :)

 

	I'm not sure how possible it would be to come up with a definitive list of (reasonable) possible combinations.

You are probably right - but I'm not too bothered about aiming at 'definitive' at this stage anyway - but I do want to get something relatively functional/useful

 

	Tom
	
	Thomas Meehan
	Head of Current Cataloguing
	University College London Library Services
	
	Owen Stephens wrote:

	We are working on converting some MARC library records to RDF, and looking at how we handle links to LCSH (id.loc.gov <http://id.loc.gov>) - and I'm looking for feedback on how we are proposing to do this...

	
	
	I'm not 100% confident about the approach, and to some extent I'm trying to work around the nature of how LCSH interacts with RDF at the moment I guess... but here goes - I would very much appreciate feedback/criticism/being told why what I'm proposing is wrong:

	I guess what I want to do is preserve aspects of the faceted nature of LCSH in a useful way, give useful links back to id.loc.gov <http://id.loc.gov> where possible, and give access to a wide range of facets on which the data set could be queried. Because of this I'm proposing not just expressing the whole of the 650 field as a LCSH and checking for it's existence on id.loc.gov <http://id.loc.gov>, but also checking for various combinations of topical term and subdivisions from the 650 field. So for any 650 field I'm proposing we should check on id.loc.gov <http://id.loc.gov> for labels matching:

	
	
	check(650$$a) --> topical term
	check(650$$b) --> topical term
	check(650$$v) --> Form subdivision
	check(650$$x) --> General subdivision
	check(650$$y) --> Chronological subdivision
	check(650$$z) --> Geographic subdivision
	
	Then using whichever elements exist (all as topical terms):
	Check(650$$a--650$$b)
	Check(650$$a--650$$v)
	Check(650$$a--650$$x)
	Check(650$$a--650$$y)
	Check(650$$a--650$$z)
	Check(650$$a--650$$b--650$$v)
	Check(650$$a--650$$b--650$$x)
	Check(650$$a--650$$b--650$$y)
	Check(650$$a--650$$b--650$$z)
	Check(650$$a--650$$b--650$$x--650$$v)
	Check(650$$a--650$$b--650$$x--650$$y)
	Check(650$$a--650$$b--650$$x--650$$z)
	Check(650$$a--650$$b--650$$x--650$$z--650$$v)
	Check(650$$a--650$$b--650$$x--650$$z--650$$y)
	Check(650$$a--650$$b--650$$x--650$$z--650$$y--650$$v)
	
	
	As an example given:
	
	650 00 $$aPopular music$$xHistory$$y20th century

	We would be checking id.loc.gov <http://id.loc.gov> for

	
	
	'Popular music' as a topical term (http://id.loc.gov/authorities/sh85088865)
	'History' as a general subdivision (http://id.loc.gov/authorities/sh99005024)
	'20th century' as a chronological subdivision ( http://id.loc.gov/authorities/sh2002012476)
	'Popular music--History and criticism' as a topical term (http://id.loc.gov/authorities/sh2008109787)
	'Popular music--20th century' as a topical term (not authorised)
	'Popular music--History and criticism--20th century' as a topical term (not authorised)
	
	
	And expressing all matches in our RDF.
	
	My understanding of LCSH isn't what it might be - but the ordering of terms in the combined string checking is based on what I understand to be the usual order - is this correct, and should we be checking for alternative orderings?
	
	Thanks
	
	Owen
	
	
	-- 
	Owen Stephens
	Owen Stephens Consulting
	Web: http://www.ostephens.com

	Email: [log in to unmask] <mailto:[log in to unmask]>

	
	-- 
	Thomas Meehan
	Head of Current Cataloguing
	Library Services
	University College London
	Gower Street
	London
	WC1E 6BT
	
	[log in to unmask]




-- 
Owen Stephens
Owen Stephens Consulting
Web: http://www.ostephens.com
Email: [log in to unmask]