LSID Tester 0.1

Written by Rod Page

This is a simple tool for testing a LSID. It is not intended as either an exhaustive or a definitive test. Source code is available from Google Code

Test 1: Valid LSID

This test simply asks whether the LSID is correctly formed, that is, it matches the pattern
urn:lsid:<authority>:<namespace>:<object>[:<revision>].

Passed

Test 2: Resolve authority

This test looks up the authority of the LSID in the Domain Name Server by looking for a SRV record.

Authority for urn:lsid:marinespecies.org:taxname:127160 is located at: marinespecies.org:80

Passed

Test 3: Authority WSDL

We try and retrieve the authority WSDL file by appending "/authority/" to the server address found above. If successful the WSDL is displayed below. You can also see the HTTP headers.

HTTP headers

Passed

Test 4: HTTP binding

We now get the HTTP binding for service WSDL from the authority WSDL.

Authority HTTP binding: http://marinespecies.org

Passed

Test 5: Get service WSDL

Using the HTTP binding we get the service WSDL which tells us how to get data and/or metadata.

http://marinespecies.org/authority/?lsid=urn:lsid:marinespecies.org:taxname:127160
HTTP headers

Passed

Test 5a: Error handling

If we attempt to get a service WSDL with an arbitrary string the LSID authority should return error code 200 "Malformed LSID"

http://marinespecies.org/authority/?lsid=xxx

HTTP error: 400

LSID error: 200

HTTP headers

Passed: LSID error 200 returned

Test 5b: Error handling

If we attempt to get a service WSDL with an arbitrary LSID the authority should return error code 201 "Unknown LSID'"

http://marinespecies.org/authority/?lsid=urn:lsid:fred.org:dagg:1

HTTP error: 400

LSID error: 201

HTTP headers

Passed: LSID error 201 returned

Test 6: Get HTTP binding for metadata

We now get the HTTP binding for metadata

Metadata HTTP binding: http://marinespecies.org/authority/metadata.php

Passed

Test 7: Get metadata

We now get the metadata. You can display the metadata in various formats, including raw text, formatted XML, and as a graph. The graph can be downloaded as a dot file, which can be displayed using Graphviz.

HTTP headers
Display:
Validate RDF

Passed