IVOA logo

This page corresponds to the earlier version of UCD (UCD1), which is now deprecated. For up-to-date VO applications, we strongly recommend using the UCD1+ vocabulary and tools.

This page lists a set of tools dedicated to UCD1:

If you are not familiar with the concept of UCD1, you might want to read a short introduction first.

UCD Tools:

Basic tools using UCD1

List all UCD1

List all existing UCD1, together with their definition (in a plain ascii file).
AT                               Atomic Data
  AT_COLL                        Atomic Collisional Quantities
    AT_COLL_EXCIT-RATE           Collisional Excitation Rate
    AT_COLL_STRENGTH             Collisional strength
  AT_CONFIG                      Electronic Configuration
  AT_CONSTANT                    Atomic Constant
  AT_DAMPING                     Atomic Damping Quantities
    AT_DAMPING_VDWAALS           Van der Waals damping
  AT_DATA                        Various Atomic data


Use this tool to explore the tree structure and get detailed information on elements.


Plain text ==> UCD

Find relevant UCD1 from keywords or strings, using :

        "B magnitude"
           ----> PHOT_JHN_B


Assign UCD1 to your dataset.
Use this tool to find relevant UCD1 for a large dataset. Prepare a file describing your data, and upload it to the assignment tool. It will suggest you what UCD1 might describe at best your dataset.

Web Services for UCD1


Various Web services (accessible through SOAP) are available.
Click here for more details on WS for UCD1

The URL corresponding to these Web services is

Example for a PERL call:
You must first download/install the SOAP-lite module.
Then download and execute the following script:

use SOAP::Lite;

my $service = SOAP::Lite->service(

my $result;

if ($ARGV[0] =~ /^[A-Z]*_/) {   # Looks like an UCD1...
    print "#### resolveUCD($ARGV[0]):\n";
    eval { $result = $service->resolveUCD($ARGV[0]); };
elsif ($ARGV[0]) {              # Assume a catalog
    print "#### UCDofCatalog($ARGV[0]):\n";
    eval { $result = $service->UCDofCatalog($ARGV[0]); };
else {                          # No argument ==> List all UCD1
    print "#### UCDList:\n";
    eval { $result = $service->UCDList(); } ;

if ( $@ ) {
    # Check for errors
    my $status = $service->transport()->status();
    print "Transport Status: " . $status . "\n";
    print "Error: $@";

print $result;

For JAVA call:
Please refer to this page

Usage of UCD1 in VizieR

Find information on metadata usage in the VizieR collection of catalogues.

Catalogue content

List all UCD1 used in a table or catalogue
Catalogue content

Statistics on one UCD

Find statistics for global usage of one UCD
UCD stats

Statistics on column label

Find statistics for usage of one column name
Column label stats

Query VizieR by UCD1

In combination with other search criteria, you can query VizieR giving a set of UCD1
Query VizieR by UCD1


Comments are welcome.

Photometric UCD1

Find relevant UCD1 for an interval in the electromagnetic spectrum.
Photometric UCD1

Prototype for unit conversion

Unit conversion, joining different catalogues based on their UCD1.
Unit conversion