PDS Registry Service API

This document describes the details of the REST-based interface for the Registry Service. The following is a list of endpoints for the API:

Resources

/registry

This is the root resource for managing the registry.

Methods

/registry/status

Methods

GET

Retrieve the status of the registry service. This can be used to monitor the health of the registry.

Available response representations:

/registry/sync

Methods

PUT

Synchronizes the incoming registry products with those already present in the registry.

Acceptable request representations:

/registry/products?start=&rows=&guid=&name=&lid=&versionName=&versionId=&objectType=&submitter=&status=&eventType=&queryOp=&sort=

This resource is responsible for managing collections of Products.

Methods

GET

Allows access to all the products managed by this repository. This list of products is based on the latest received product's logical identifier (lid). The header will contain pointers to next and previous when applicable.

Request query parameters
parametervaluedescription

start

int

Default: 1

the index at which to start the result list from

rows

int

Default: 20

how many results to return

guid

string

filter to apply on the global unique id, supports wildcard (*)

name

string

filter to apply to name, support wildcard (*)

lid

string

filter to apply to logical id, supports wildcard (*)

versionName

string

filter to apply to registry object version, supports wildcard (*)

versionId

string

filter to apply on the user version, supports wildcard (*)

objectType

string

filter to apply on the user defined registry object types,supports wildcard (*)

submitter

string

CURRENTLY UNSUPPORTED

status

string

filter to apply on the object status, maps to {@link ObjectStatus} enum

eventType

string

CURRENTLY UNSUPPORTED

queryOp

string

Default: AND

to apply to filters, valid values are AND or OR. Defaults to AND.

sort

string

defines what parameters to sort on. The format is "parameter order" the order is optional. The default is "guid ASC" and if unspecified the ordering is ASC.

Available response representations:

POST

Publishes a product to the registry. Publishing includes validation, assigning an internal version, validating the submission, and notification. The submitted product should not contain the same logical identifier as previously submitted product (412 Precondition Failed), in that scenario the version interface should be used.

Acceptable request representations:

Response header parameters
parametervaluedescription

Location

anyURI

The URI where the created item is accessible.

Available response representations:

/registry/products/{lid}?major=

Resource-wide template parameters
parametervaluedescription

lid

string

the logical identifier to the product

Methods

POST

Creates a new version of a product in the registry. Follows the same procedures as publishing with the caveat that the logical identifier this product carries should already exist in the registry (412 Precondition Failed).

Request query parameters
parametervaluedescription

major

boolean

Default: true

if true indicates a major revision otherwise considered minor

Acceptable request representations:

Response header parameters
parametervaluedescription

Location

anyURI

The URI where the created item is accessible.

Available response representations:

GET

Retrieves the latest product from the registry. The local identifier points to a collection of versions of the same product.

Available response representations:

/registry/products/{lid}/all

Resource-wide template parameters
parametervaluedescription

lid

string

local identifier of set products to retrieve

Methods

GET

Retrieves the collection of products that share the same local identifier. This method supports finding all versions of an product.

Available response representations:

/registry/products/{lid}/earliest

Resource-wide template parameters
parametervaluedescription

lid

string

local identifier of product to retrieve

Methods

GET

Retrieves the earliest product from the registry. The local identifier points to a collection of versions of the same product.

Available response representations:

/registry/products/{lid}/{versionId}

This class delegates all functions involving a particular product. This is defined as a sub-resource to the registry resource merely to partition off the operations involving products.

Resource-wide template parameters
parametervaluedescription

lid

string

of the product's local identifier

versionId

string

local identifier which identifies a unique set of products

Methods

GET

Retrieves a single product from the registry. The local identifier with the version uniquely identifies one product.

Available response representations:

POST

Updates an existing product with the given local identifier and version.

Acceptable request representations:

Available response representations:

DELETE

Removes an product from the registry

Available response representations:

/registry/products/{lid}/{versionId}/{status}

Resource-wide template parameters
parametervaluedescription

lid

string

of the product's local identifier

versionId

string

local identifier which identifies a unique set of products

status

string

to take on product which will result in an update of status {@link ObjectAction}

Methods

POST

This will change the status of the registered product

Available response representations:

/registry/associations?start=&rows=&targetLid=&targetVersionId=&targetHome=&sourceLid=&sourceVersionId=&sourceHome=&associationType=&queryOp=&sort=

This is the resource responsible for managing Associations

Methods

GET

Retrieves all associations managed by the registry given a set of filters.

Request query parameters
parametervaluedescription

start

int

Default: 1

the index at which to start the result list from

rows

int

Default: 20

how many results to return

targetLid

string

filter on the logical identifier of the target in the association supports wildcard (*)

targetVersionId

string

filter on the version id of the target in the association supports wildcard (*)

targetHome

string

filter on the URI of the home of the target in the association supports wildcard (*)

sourceLid

string

filter on the logical identifier of the source in the association supports wildcard (*)

sourceVersionId

string

filter on the version id of the source in the association supports wildcard (*)

sourceHome

string

filter on the URI of the home of the source in the association supports wildcard (*)

associationType

string

filter on the type of association supports wildcard (*)

queryOp

string

Default: AND

to apply to filters, valid values are AND or OR. Defaults to AND.

sort

string

defines what parameters to sort on. The format is "parameter order" the order is optional. The default is "guid ASC" and if unspecified the ordering is ASC.

Available response representations:

POST

Publishes an association to the registry. Publishing includes validation, assigning an internal version, validating the submission, and notification.

Acceptable request representations:

Response header parameters
parametervaluedescription

Location

anyURI

The URI where the created item is accessible.

Available response representations:

/registry/associations/{lid}/{versionId}?start=&rows=

Resource-wide template parameters
parametervaluedescription

lid

string

versionId

string

Methods

GET

Retrieves all associations managed by the registry given a set of filters.

Request query parameters
parametervaluedescription

start

int

Default: 1

the index at which to start the result list from

rows

int

Default: 20

how many results to return

Available response representations:

/registry/associations/{guid}

Resource-wide template parameters
parametervaluedescription

guid

string

of association

Methods

GET

Retrieves an association with the given global identifier.

Available response representations:

DELETE

Deletes the association with the given guid

Available response representations:

/registry/events

This is the resource responsible for managing Auditable Events.

Methods

/registry/events/{affectedObject}

Resource-wide template parameters
parametervaluedescription

affectedObject

string

guid for object

Methods

GET

Retrieve all AuditableEvents found for a given registry object.

Available response representations:

/registry/schemes

This resource is responsible for managing operations involving Classification Schemes.

Methods

POST

Publishes a Classification Scheme to the registry.

Acceptable request representations:

Response header parameters
parametervaluedescription

Location

anyURI

The URI where the created item is accessible.

Available response representations:

/registry/schemes/{schemeGuid}

Resource-wide template parameters
parametervaluedescription

schemeGuid

string

globally unique id of scheme

Methods

GET

Retrieves the classification scheme with the given identifier

Available response representations:

DELETE

Deletes the classification scheme with the given guid

Available response representations:

/registry/schemes/{schemeGuid}/nodes

This resource is responsible Classification Nodes for a given Classification Scheme.

Resource-wide template parameters
parametervaluedescription

schemeGuid

string

globally unique id of scheme

Methods

GET

Retrieves the classification nodes for the scheme

Available response representations:

POST

Publishes a classification node to the registry.

Acceptable request representations:

Response header parameters
parametervaluedescription

Location

anyURI

The URI where the created item is accessible.

Available response representations:

/registry/schemes/{schemeGuid}/nodes/{nodeGuid}

Resource-wide template parameters
parametervaluedescription

schemeGuid

string

globally unique id of scheme

nodeGuid

string

globally unique identifier of node

Methods

GET

Retrieves the classification node with the given identifier

Available response representations:

DELETE

Deletes the classification node from the registry

Available response representations:

/registry/services

This resource is responsible for managing Service descriptions.

Methods

POST

Publishes a service to the registry.

Acceptable request representations:

Response header parameters
parametervaluedescription

Location

anyURI

The URI where the created item is accessible.

Available response representations:

/registry/services/{guid}

Resource-wide template parameters
parametervaluedescription

guid

string

globally unique identifier of service

Methods

GET

Retrieves the service with the given identifier.

Available response representations:

DELETE

Deletes the service from the registry.

Available response representations:

/registry/classifications

This is the resource for managing Classifications. Currently there are no operations associated with this Resource.

Methods

Representations

Status Code 200 - application/xml (ns3:status_information)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<statusInformation classificationNodes="0" classificationSchemes="0" services="0" products="0" associations="0" serverStarted="2010-11-01T10:24:40.966-07:00" status="OK" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source:

application/xml

application/json

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response numFound="1" start="1" xmlns="http://registry.pds.nasa.gov">
    <results>
        <registryObject versionId="1.0" versionName="1.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid220dfa6e-47f1-464b-ade2-9faf33002d19">
            <slot name="last-name" id="0">
                <value>Doe</value>
            </slot>
            <slot name="phone" id="0">
                <value>(818)123-4567</value>
                <value>(818)765-4321</value>
            </slot>
            <slot name="first-name" id="0">
                <value>John</value>
            </slot>
        </registryObject>
    </results>
</response>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

application/xml (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionName="1.0" description="Default Description" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/json (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionName="1.0" description="Default Description" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/xml

application/json

application/xml (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionId="1.0" versionName="2.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid1e0edad2-b535-4abb-af7f-a81747719563" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/json (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionId="1.0" versionName="2.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid1e0edad2-b535-4abb-af7f-a81747719563" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/xml

application/json

Status Code 200 - application/xml (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionId="1.0" versionName="1.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid220dfa6e-47f1-464b-ade2-9faf33002d19" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response xmlns="http://registry.pds.nasa.gov">
    <results>
        <registryObject versionId="1.0" versionName="1.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid220dfa6e-47f1-464b-ade2-9faf33002d19">
            <slot name="last-name" id="0">
                <value>Doe</value>
            </slot>
            <slot name="phone" id="0">
                <value>(818)123-4567</value>
                <value>(818)765-4321</value>
            </slot>
            <slot name="first-name" id="0">
                <value>John</value>
            </slot>
        </registryObject>
        <registryObject versionId="1.1" versionName="2.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuida6ee0e5a-a6a9-47cf-9dfb-db8a7c182cad">
            <slot name="last-name" id="0">
                <value>Doe</value>
            </slot>
            <slot name="phone" id="0">
                <value>(818)123-4567</value>
                <value>(818)765-4321</value>
            </slot>
            <slot name="first-name" id="0">
                <value>John</value>
            </slot>
        </registryObject>
    </results>
</response>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

Status Code 200 - application/xml (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionId="1.0" versionName="1.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid220dfa6e-47f1-464b-ade2-9faf33002d19" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

Status Code 200 - application/xml (ns3:product)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<product versionId="1.0" versionName="1.0" description="Default Description" status="Submitted" objectType="Product" lid="1234" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid220dfa6e-47f1-464b-ade2-9faf33002d19" xmlns="http://registry.pds.nasa.gov">
    <slot name="last-name" id="0">
        <value>Doe</value>
    </slot>
    <slot name="phone" id="0">
        <value>(818)123-4567</value>
        <value>(818)765-4321</value>
    </slot>
    <slot name="first-name" id="0">
        <value>John</value>
    </slot>
</product>

XML Schema

Source: registry-service.xsd

<xs:element name="product">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="contentVersion" type="xs:string"/>
          <xs:attribute name="mimeType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/xml

application/json

*/*

*/*

*/*

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response xmlns="http://registry.pds.nasa.gov">
    <results>
        <registryObject status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuida0c0dc5c-7ff1-433c-a3be-19b609624d73"/>
        <registryObject status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid5b31cdc2-8e61-42f3-886b-d5e1fc328958"/>
    </results>
</response>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

application/xml (ns3:association)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<association targetHome="http://pds.jpl.nasa.gov/registry-service" targetVersionId="3.0" targetLid="1234" sourceHome="http://pds.jpl.nasa.gov/registry-service" sourceVersionId="1.0" sourceLid="1234" status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuida0c0dc5c-7ff1-433c-a3be-19b609624d73" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="association">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="sourceGuid" type="xs:string"/>
          <xs:attribute name="sourceLid" type="xs:string"/>
          <xs:attribute name="sourceVersionId" type="xs:string"/>
          <xs:attribute name="sourceHome" type="xs:string"/>
          <xs:attribute name="targetGuid" type="xs:string"/>
          <xs:attribute name="targetLid" type="xs:string"/>
          <xs:attribute name="targetVersionId" type="xs:string"/>
          <xs:attribute name="targetHome" type="xs:string"/>
          <xs:attribute name="associationType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/json (ns3:association)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<association targetHome="http://pds.jpl.nasa.gov/registry-service" targetVersionId="3.0" targetLid="1234" sourceHome="http://pds.jpl.nasa.gov/registry-service" sourceVersionId="1.0" sourceLid="1234" status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuida0c0dc5c-7ff1-433c-a3be-19b609624d73" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="association">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="sourceGuid" type="xs:string"/>
          <xs:attribute name="sourceLid" type="xs:string"/>
          <xs:attribute name="sourceVersionId" type="xs:string"/>
          <xs:attribute name="sourceHome" type="xs:string"/>
          <xs:attribute name="targetGuid" type="xs:string"/>
          <xs:attribute name="targetLid" type="xs:string"/>
          <xs:attribute name="targetVersionId" type="xs:string"/>
          <xs:attribute name="targetHome" type="xs:string"/>
          <xs:attribute name="associationType" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response xmlns="http://registry.pds.nasa.gov">
    <results>
        <registryObject status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuida0c0dc5c-7ff1-433c-a3be-19b609624d73"/>
        <registryObject status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid5b31cdc2-8e61-42f3-886b-d5e1fc328958"/>
    </results>
</response>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<association targetHome="http://pds.jpl.nasa.gov/registry-service" targetVersionId="3.0" targetLid="1234" sourceHome="http://pds.jpl.nasa.gov/registry-service" sourceVersionId="1.0" sourceLid="1234" status="Submitted" objectType="Association" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid5b31cdc2-8e61-42f3-886b-d5e1fc328958" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

*/*

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response xmlns="http://registry.pds.nasa.gov">
    <results>
        <registryObject home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid0e197d92-441e-422f-b958-4a51c3f60b2f"/>
        <registryObject home="http://pds.jpl.nasa.gov/registry-service" guid="urn:uuid1761ac4c-a278-44b8-9aa8-1629a5b8ada5"/>
    </results>
</response>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

application/xml (ns3:classificationScheme)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classificationScheme nodeType="UniqueCode" isInternal="true" description="This is the canonical object type classification that is one of the core registry objects" objectType="ClassificationScheme" name="Test Canonical Object Type Classification Scheme" guid="urn:registry:ObjectTypeScheme" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="classificationScheme">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="isInternal" type="xs:boolean"/>
          <xs:attribute name="nodeType">
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:enumeration value="UniqueCode"/>
                <xs:enumeration value="EmbeddedPath"/>
                <xs:enumeration value="NonUniqueCode"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/json (ns3:classificationScheme)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classificationScheme nodeType="UniqueCode" isInternal="true" description="This is the canonical object type classification that is one of the core registry objects" objectType="ClassificationScheme" name="Test Canonical Object Type Classification Scheme" guid="urn:registry:ObjectTypeScheme" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="classificationScheme">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="isInternal" type="xs:boolean"/>
          <xs:attribute name="nodeType">
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:enumeration value="UniqueCode"/>
                <xs:enumeration value="EmbeddedPath"/>
                <xs:enumeration value="NonUniqueCode"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*

Status Code 200 - application/xml (ns3:classificationScheme)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classificationScheme nodeType="UniqueCode" isInternal="true" versionId="1.0" versionName="1.0" description="This is the canonical object type classification that is one of the core registry objects" objectType="ClassificationScheme" name="Test Canonical Object Type Classification Scheme" lid="urn:uuid8e6f44bb-12d7-4db1-94e0-2affadaaf7b1" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:registry:ObjectTypeScheme" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="classificationScheme">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="isInternal" type="xs:boolean"/>
          <xs:attribute name="nodeType">
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:enumeration value="UniqueCode"/>
                <xs:enumeration value="EmbeddedPath"/>
                <xs:enumeration value="NonUniqueCode"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*

Status Code 200 - application/xml (ns3:response)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<response xmlns="http://registry.pds.nasa.gov">
    <results>
        <registryObject description="This is the classification node for product." objectType="ClassificationNode" name="Product Node" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:registry:ObjectTypeScheme:Product"/>
        <registryObject description="This is the classification node for product." objectType="ClassificationNode" name="Test Product Node" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:registry:ObjectTypeScheme:Product:Test"/>
    </results>
</response>

XML Schema

Source: registry-service.xsd

<xs:element name="response">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="results" form="qualified" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="tns:registryObject"/>
                <xs:element ref="tns:association"/>
                <xs:element ref="tns:auditableEvent"/>
                <xs:element ref="tns:classification"/>
                <xs:element ref="tns:classificationNode"/>
                <xs:element ref="tns:classificationScheme"/>
                <xs:element ref="tns:product"/>
                <xs:element ref="tns:service"/>
                <xs:element ref="tns:serviceBinding"/>
                <xs:element ref="tns:specificationLink"/>
              </xs:choice>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="start" type="xs:int"/>
      <xs:attribute name="numFound" type="xs:long"/>
    </xs:complexType>
  </xs:element>

application/xml (ns3:classificationNode)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classificationNode code="Product" parent="urn:registry:ObjectTypeScheme" description="This is the classification node for product." objectType="ClassificationNode" name="Product Node" guid="urn:registry:ObjectTypeScheme:Product" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="classificationNode">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="parent" type="xs:string"/>
          <xs:attribute name="code" type="xs:string"/>
          <xs:attribute name="path" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/json (ns3:classificationNode)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classificationNode code="Product" parent="urn:registry:ObjectTypeScheme" description="This is the classification node for product." objectType="ClassificationNode" name="Product Node" guid="urn:registry:ObjectTypeScheme:Product" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="classificationNode">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="parent" type="xs:string"/>
          <xs:attribute name="code" type="xs:string"/>
          <xs:attribute name="path" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*

Status Code 200 - application/xml (ns3:classificationNode)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<classificationNode path="/urn:registry:ObjectTypeScheme/Product" code="Product" parent="urn:registry:ObjectTypeScheme" description="This is the classification node for product." objectType="ClassificationNode" name="Product Node" home="http://pds.jpl.nasa.gov/registry-service" guid="urn:registry:ObjectTypeScheme:Product" xmlns="http://registry.pds.nasa.gov"/>

XML Schema

Source: registry-service.xsd

<xs:element name="classificationNode">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence/>
          <xs:attribute name="parent" type="xs:string"/>
          <xs:attribute name="code" type="xs:string"/>
          <xs:attribute name="path" type="xs:string"/>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*

application/xml (ns3:service)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<service description="This is a service to test adding a service description to the registry" name="PDS Service" xmlns="http://registry.pds.nasa.gov">
    <serviceBinding accessURI="http://pds.jpl.nasa.gov" description="This is the PDS main web site" name="PDS Main Site">
        <specificationLink specificationObject="urn:uuid:HTTPSpecificationDocument" description="This is a link to the HTTP specification." name="HTTP Specification Link">
            <usageDescription>Use a browser to access the PDS site. The acceptable browsers are listed in the usage parameters.</usageDescription>
            <usageParameter>Firefox</usageParameter>
            <usageParameter>Internet Explorer</usageParameter>
            <usageParameter>Chrome</usageParameter>
            <usageParameter>Safari</usageParameter>
        </specificationLink>
    </serviceBinding>
</service>

XML Schema

Source: registry-service.xsd

<xs:element name="service">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence>
            <xs:element ref="tns:serviceBinding" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

application/json (ns3:service)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<service description="This is a service to test adding a service description to the registry" name="PDS Service" xmlns="http://registry.pds.nasa.gov">
    <serviceBinding accessURI="http://pds.jpl.nasa.gov" description="This is the PDS main web site" name="PDS Main Site">
        <specificationLink specificationObject="urn:uuid:HTTPSpecificationDocument" description="This is a link to the HTTP specification." name="HTTP Specification Link">
            <usageDescription>Use a browser to access the PDS site. The acceptable browsers are listed in the usage parameters.</usageDescription>
            <usageParameter>Firefox</usageParameter>
            <usageParameter>Internet Explorer</usageParameter>
            <usageParameter>Chrome</usageParameter>
            <usageParameter>Safari</usageParameter>
        </specificationLink>
    </serviceBinding>
</service>

XML Schema

Source: registry-service.xsd

<xs:element name="service">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence>
            <xs:element ref="tns:serviceBinding" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*

Status Code 200 - application/xml (ns3:service)

Example
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<service description="This is a service to test adding a service description to the registry" name="PDS Service" xmlns="http://registry.pds.nasa.gov">
    <serviceBinding accessURI="http://pds.jpl.nasa.gov" description="This is the PDS main web site" name="PDS Main Site">
        <specificationLink specificationObject="urn:uuid:HTTPSpecificationDocument" description="This is a link to the HTTP specification." name="HTTP Specification Link">
            <usageDescription>Use a browser to access the PDS site. The acceptable browsers are listed in the usage parameters.</usageDescription>
            <usageParameter>Firefox</usageParameter>
            <usageParameter>Internet Explorer</usageParameter>
            <usageParameter>Chrome</usageParameter>
            <usageParameter>Safari</usageParameter>
        </specificationLink>
    </serviceBinding>
</service>

XML Schema

Source: registry-service.xsd

<xs:element name="service">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="tns:registryObjectType">
          <xs:sequence>
            <xs:element ref="tns:serviceBinding" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>

*/*