It has an OpenSearch interface:
http://id.loc.gov/authorities/opensearch
But I don't think there's a way to explicitly limit to, say, the
beginning of a label.
lcsubjects.org has a sparql interface where you could use a regex
filter on the labels:
http://api.talis.com/stores/lcsh-info/services/sparql
But it's probably not going to be fast enough for what you're talking about.
There are around 647,500 distinct labels in the dump files, it might
be easier and better to just grab the n-triples file, pull the lines
with <http://www.w3.org/2004/02/skos/core#prefLabel> and
<http://www.w3.org/2004/02/skos/core#altLabel> and shove them in a
local data store.
On the other hand, if you don't care where your "autocomplete" string
is coming from in the label, you could try:
http://api.talis.com/stores/lcsh-info/items?query=preflabel%3Av+||+altlabel%3Av&max=10&offset=0&sort=&xsl=&content-type=
http://api.talis.com/stores/lcsh-info/items?query=preflabel%3Avi+||+altlabel%3Avi&max=10&offset=0&sort=&xsl=&content-type=
http://api.talis.com/stores/lcsh-info/items?query=preflabel%3Avir+||+altlabel%3Avir&max=10&offset=0&sort=&xsl=&content-type=
etc.
-Ross.
On Mon, Dec 7, 2009 at 10:46 AM, Ethan Gruber <[log in to unmask]> wrote:
> Hi all,
>
> I have a need to integrate the LCSH terms into a web form that uses
> auto-suggest to control the vocabulary. Is this technically possible with
> the id.loc.gov service? I can curl a specific id to view the rdf, but I
> would need to know the specifics of the search index on the site to feed the
> auto-suggest. For example, when the user types "va" in the box, the results
> should filter all subject headings that begin with "va."
>
> I can certainly accomplish this by indexing the ~400 meg XML file into solr
> and use TermsComponent to filter terms dynamically as the user types, but
> I'd rather use the LOC's service if possible.
>
> So my question is: has anyone successfully done this before in the way I
> described?
>
> Thanks,
> Ethan Gruber
> University of Virginia Library
>
|