TMS and Getty Vocabularies

110 views
Skip to first unread message

steven...@moma.org

unread,
Sep 24, 2015, 12:07:51 PM9/24/15
to Getty Vocabularies as Linked Open Data

I build some web pages that query TMS as RDF stored in SQL Server using RDFSharp.  I am able to use TGN for unique location references because TGN is integrated in TMS (AAT too).  But I had to create a proprietary reference for artists, using an internal ID, but it would be great to use the ULAN ID.  Is there any plan to include this in TMS that you know of?  Or does anyone store the ULAN ID separately in TMS?  Thanks.

Steve
 

steven...@moma.org

unread,
Sep 25, 2015, 10:03:55 AM9/25/15
to Getty Vocabularies as Linked Open Data

This is the GitHub project that is related to my original question:

https://github.com/smoore4moma/tms-rdf

The most relevant parts are cut-and-pasted below, where you can sort of see why I am wishing for ULAN in TMS.....

// First we set some core RDF resources
RDFResource type = RDFVocabulary.RDF.TYPE;
RDFResource name = RDFVocabulary.FOAF.NAME;

// Ideally this would reference the Getty vocabulary for ULAN but we don't have the ULAN ID stored in the db
// Use standard dc terms like creator instead of "artist"
RDFResource creator = new RDFResource(RDFVocabulary.DC.CREATOR + "creator");

// TGN is a Getty vocabulary for locations
// TGN added to RDFSharp vocabularies manually.  TGN ID is stored in TMSThes (or equivalent in TMS 2014+)
RDFResource tgn = new RDFResource(RDFVocabulary.TGN.BASE_URI + "tgn");

// The predicates below are often part of ULAN (which we don't have)
RDFResource livedIn = new RDFResource(RDFVocabulary.SKOS.BASE_URI + "livedIn");
RDFResource activeIn = new RDFResource(RDFVocabulary.SKOS.BASE_URI + "activeIn");
RDFResource educatedIn = new RDFResource(RDFVocabulary.SKOS.BASE_URI + "educatedIn");
RDFResource bornIn = new RDFResource(RDFVocabulary.SKOS.BASE_URI + "bornIn");
RDFResource diedIn = new RDFResource(RDFVocabulary.SKOS.BASE_URI + "diedIn");

etc...

Vladimir Alexiev

unread,
Sep 28, 2015, 4:58:45 AM9/28/15
to Getty Vocabularies as Linked Open Data
Hi Steven!

Exposing some TMS data as RDF is a very useful initiative!
I'd be glad to help you with the RDF modeling.
I posted some comments at https://github.com/smoore4moma/tms-rdf/issues/1

Cheers! V

PS: Richard Light wrote here on 18 Jul 2015 about using ULAN as a Modes 'web termlist' to insert ULAN identifiers into MoMA data. Is that a different MoMA? Or MoMA uses two systems, Modes and TMS?

Richard Light

unread,
Sep 28, 2015, 6:05:47 AM9/28/15
to gettyv...@googlegroups.com

On 28/09/2015 09:58, Vladimir Alexiev wrote:
PS: Richard Light wrote here on 18 Jul 2015 about using ULAN as a Modes 'web termlist' to insert ULAN identifiers into MoMA data. Is that a different MoMA? Or MoMA uses two systems, Modes and TMS?
Sadly, no, MoMA doesn't use Modes. (It's their loss. :-)

I was experimenting with the data which MoMA released as CC0 last month [1].  I converted it to XML, imported it into Modes, and was looking for a means of adding Linked Data identifiers to the artist details contained in the source data.  It was at this point that I hit content negotiation issues in my 'web termlist' [2].  My intention is to re-publish the MoMA records as Linked Data.

It would be useful if we could develop web services which facilitate the selection and inclusion of Getty Linked Data identifiers, in much the same way as my Modes 'web termlists'.  The general brief for such a web service is that it should take as input a text string, such as an artist's name in the case of ULAN, and return a set of possible 'hits' together with metadata for each.  If such a service existed, all the major collections management systems could then include support for it.  This would make it much easier for many museums to include Getty identifiers in their catalogue records where at present they only have string values.

Richard

[1] https://github.com/MuseumofModernArt/collection
[2] https://groups.google.com/forum/#!topic/gettyvocablod/YQ9zbiuFu7s

--
You received this message because you are subscribed to the Google Groups "Getty Vocabularies as Linked Open Data" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gettyvocablo...@googlegroups.com.
To post to this group, send email to gettyv...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gettyvocablod/c8cdae98-2215-49c8-80ce-6568709e45d2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Richard Light

Moore, Steven

unread,
Sep 28, 2015, 6:22:21 AM9/28/15
to gettyv...@googlegroups.com, Richard Light
Actually, doesn't this work for what you mention (q=serra)?

Steven Moore
Database Administrator
The Museum of Modern Art (MoMA)
11 West 53 Street ~ New York, NY ~ 10019
steven...@moma.org
Phone:  011.33.62.782.1223



--
You received this message because you are subscribed to a topic in the Google Groups "Getty Vocabularies as Linked Open Data" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gettyvocablod/hczMijgbD3w/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gettyvocablo...@googlegroups.com.

To post to this group, send email to gettyv...@googlegroups.com.

Richard Light

unread,
Sep 28, 2015, 6:46:12 AM9/28/15
to gettyv...@googlegroups.com

Steven,

That's certainly a much simpler query syntax to work with than SPARQL!  The one problem I would have in trying to use this service in a Modes web termlist is that the response is HTML, i.e. not a machine-processible format.  If it were well-formed XHTML, I could happily make use of it.

So from my particular perspective, the requirement for this web service is that it should involve an HTTP request which delivers an XML response.  It should specify a URL template into which I can insert the string values provided by the user.  I simply write an XSLT transform to convert whatever XML is returned into a list of candidate terms, and another XSLT to convert each selected concept into a Modes record, which I store in a local cache file.

It would be useful to get agreement from some major systems suppliers on the specification of a Linked Data web service which they would be willing to implement in their systems.  Such a specification could initially be used to support the Getty vocabularies, but would be of value for accessing other Linked Data resources as well (not least because the 'plumbing' to make them work in TMS etc. would then already be in place).

Richard

For more options, visit https://groups.google.com/d/optout.

--
Richard Light

Vladimir Alexiev

unread,
Sep 28, 2015, 8:08:03 AM9/28/15
to Getty Vocabularies as Linked Open Data
We've documented the queries used for FTS at http://vocab.getty.edu/doc/queries#Full_Text_Search_Query and the next two.
Steven's query ("serra") looks like this (aded skos:inScheme):
select ?Subject ?Term ?Parents ?Descr ?ScopeNote ?Type (coalesce(?Type1,?Type2) as ?ExtraType) {
 
?Subject luc:term "serra"; a ?typ; skos:inScheme ulan:.
 
?typ rdfs:subClassOf gvp:Subject; rdfs:label ?Type.
  filter
(?typ != gvp:Subject)
  optional
{?Subject gvp:placeTypePreferred [gvp:prefLabelGVP [xl:literalForm ?Type1]]}
  optional
{?Subject gvp:agentTypePreferred [gvp:prefLabelGVP [xl:literalForm ?Type2]]}
  optional
{?Subject gvp:prefLabelGVP [xl:literalForm ?Term]}
  optional
{?Subject gvp:parentStringAbbrev ?Parents}
  optional
{?Subject foaf:focus/gvp:biographyPreferred/schema:description ?Descr}
  optional
{?Subject skos:scopeNote [dct:language gvp_lang:en; rdf:value ?ScopeNote]}}

You can get the results in XML or in JSON or in TSV by using a direct URL.

> That's certainly a much simpler query syntax to work with than SPARQL! 

It is. But there are many variations of what you may need in a FTS query. We have 3 variants in the doc (see link above), and more are discussed here: https://groups.google.com/forum/#!topic/gettyvocablod/r4wsSJyne84
Another question: our FTS adds "*" at the end of every word in the query ("serra*" returns 103). But it seems to me that in this case no "*" captures the intent of Steven's query better ("serra" returns 51).

If CMS vendors or users can show some agreement on what they need, we can add several search services very easily (using canned SPARQL queries).

Richard, thanks for your suggestions for a web service! I've added them to your previous suggestions for a Widget or Popup (task https://jira.getty.edu/browse/ITSLOD-395)
Reply all
Reply to author
Forward
0 new messages