[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Handle-info] how to resolve a handle prefix owner?
I think the Turkish locale issues were fixed in the current Handle software release 7.2, but we'd certainly appreciate your evaluation of that.
Robert
On 2013-02-27, at 13:54 , "Uwe Schindler" <uschindler@pangaea.de> wrote:
>> thanks a lot.
>> Man you are working at all projects, not only Lucene but also handle-info.
>> Anything else I should know about? ;-)
>
> Oh there are many other things :-) But I am working for PANGAEA, where I started to use Lucene and implement numeric search. Handle system is just a secondary battlefield, because PANGAEA registers DOIs through DataCite.
>
> Recently my "job" as "unicode and localization policeman" found some bugs in the handle server software, which makes it unuseable in the Turkish locale; I am trying to find a place where to file a bug report. If you hear Turkish locale, you may know about the issue in the handle server software, if not, read http://blog.thetaphi.de/2012/07/default-locales-default-charsets-and.html - With a new ANT/Maven plugin you can scan your own Java Bytecode for those problems involving default charsets, locales and timezones.
>
>> The main problem is that while harvesting over 2500 OAI repositories there
>> are some repositories with dc:identifier for hdl.handle.net which do not
>> resolve.
>
> Ah so you needed no "generic way to detect this", so the simple hdl.handle.net website was enough. I think then you have all information needed with 0.NA/prefix.
>
>> Either they have an invalid prefix (not registered?) or we get a "server not
>> responding" (sound like prefix is valid but suffix is not?).
>>
>> Anyway, first step would be to check if the prefix is registered and then to
>> get in contact with repository admin via Email.
>>
>> By the way, I have also indexed your repository:
>> http://www.base-search.net/Search/Results?q=dccoll:ftpangaea
>>
>> Regards
>> Bernd
>>
>>
>> Am 27.02.2013 14:47, schrieb Uwe Schindler:
>>> Hi Bernd,
>>>
>>> it depends "what information you need" or better, what you are intending
>> to do. As Mark already mentioned, to get the eMail adresse is a possibility. In
>> our case (we are part of DataCite), we needed to check, if any handle is
>> owned by crossref or by datacite. The eMail information is therefore not
>> really useful to get this information. But Instead we use the HS_SERV record,
>> which returns the handle of the responsible handle server for the prefix. This
>> is very nice to find out, which handle server is responsible and based on that
>> to make a decision.
>>>
>>> Here is our Java code to do this information. Please note:
>> Util.getZeroNAHandle(Util.encodeString(hdl)) <-- this returns the
>> 0.NA/prefix-Handle of a given Handle. If you want to use Mark's approach
>> (get the e-Mail address), just change Common.STD_TYPE_HSSERV to
>> Common.STD_TYPE_EMAIL. Of course you can get any other information
>> from the list of values in the corresponding 0.NA handle.
>>>
>>> public static final HandleType getHandleType(String hdl) throws
>> HandleException {
>>> ResolutionRequest req=new ResolutionRequest(
>>> Util.getZeroNAHandle(Util.encodeString(hdl)),
>>> new byte[][]{ Common.STD_TYPE_HSSERV },
>>> new int[0],
>>> null);
>>> AbstractResponse response=handleResolver.processRequest(req, null);
>>>
>> if(response.responseCode==AbstractMessage.RC_HANDLE_NOT_FOUND) {
>>> throw new
>> HandleException(HandleException.HANDLE_DOES_NOT_EXIST);
>>> } else if (response instanceof ErrorResponse){
>>> String msg = Util.decodeString( ((ErrorResponse)response).message );
>>> throw new
>> HandleException(HandleException.INTERNAL_ERROR,AbstractMessage.getR
>> esponseCodeMessage(response.responseCode)+": "+msg);
>>> }
>>>
>>> HandleValue values[] =
>> ((ResolutionResponse)response).getHandleValues();
>>> if (values==null || values.length==0)
>>> throw new
>> HandleException(HandleException.HANDLE_DOES_NOT_EXIST, "Handle
>> contains no HS_SERV.");
>>> for (HandleValue hv : values) {
>>> if (Util.equals(Common.STD_TYPE_HSSERV, hv.getType())){
>>> return HandleType.lookup(hv.getDataAsString());
>>> }
>>> }
>>> throw new
>>> HandleException(HandleException.HANDLE_DOES_NOT_EXIST,"Handle
>> contains
>>> no HS_SERV."); }
>>>
>>> public static enum HandleType {
>>> UNKNOWN, CROSSREF, DATACITE;
>>>
>>> public static HandleType lookup(String hsServ) {
>>> if (hsServ.equalsIgnoreCase("0.SERV/10.crossref")) {
>>> return CROSSREF;
>>> } else if (hsServ.equalsIgnoreCase("0.SERV/10.TIB")) {
>>> return DATACITE;
>>> } else {
>>> return UNKNOWN;
>>> }
>>> }
>>> }
>>>
>>> -----
>>> UWE SCHINDLER
>>> Webserver/Middleware Development
>>> PANGAEA - Data Publisher for Earth & Environmental Science MARUM
>>> (Cognium building) - University of Bremen Room 0510, Hochschulring 18,
>>> D-28359 Bremen
>>> Tel.: +49 421 218 65595
>>> Fax: +49 421 218 65505
>>> http://www.pangaea.de/
>>> E-mail: uschindler@pangaea.de
>>>
>>>
>>>> -----Original Message-----
>>>> From: handle-info-admin@cnri.reston.va.us [mailto:handle-info-
>>>> admin@cnri.reston.va.us] On Behalf Of Bernd Fehling
>>>> Sent: Wednesday, February 27, 2013 8:23 AM
>>>> To: handle-info@cnri.reston.va.us
>>>> Subject: [Handle-info] how to resolve a handle prefix owner?
>>>>
>>>> Hi list,
>>>>
>>>> i tried to figure out how to resolve an owner of a prefix handle but
>>>> couldn't find any way to solve this.
>>>>
>>>> Any idea how to lookup a prefix owner?
>>>>
>>>> Regards
>>>> Bernd
>>>>
>>>> _______________________________________________
>>>> Handle-Info mailing list
>>>> Handle-Info@cnri.reston.va.us
>>>> http://www.handle.net/mailman/listinfo/handle-info
>>>
>>>
>>> _______________________________________________
>>> Handle-Info mailing list
>>> Handle-Info@cnri.reston.va.us
>>> http://www.handle.net/mailman/listinfo/handle-info
>>>
>>
>> --
>> **********************************************************
>> ***
>> Bernd Fehling Bielefeld University Library
>> Dipl.-Inform. (FH) LibTec - Library Technology
>> Universitätsstr. 25 and Knowledge Management
>> 33615 Bielefeld
>> Tel. +49 521 106-4060 bernd.fehling(at)uni-bielefeld.de
>>
>> BASE - Bielefeld Academic Search Engine - www.base-search.net
>> **********************************************************
>> ***
>>
>>
>> _______________________________________________
>> Handle-Info mailing list
>> Handle-Info@cnri.reston.va.us
>> http://www.handle.net/mailman/listinfo/handle-info
>
>
> _______________________________________________
> Handle-Info mailing list
> Handle-Info@cnri.reston.va.us
> http://www.handle.net/mailman/listinfo/handle-info
_______________________________________________
Handle-Info mailing list
Handle-Info@cnri.reston.va.us
http://www.handle.net/mailman/listinfo/handle-info