Base Network Resource Representation

Network Resource is the abstract base for all other UNIS resources (except Topology and Metadata). UNIS does not accept directly a network resource, but it does handle all the resources derived from network resource.

Identifiers in UNIS works slightly different than that in perfSONAR and NML community. The id field has been long used as URN to globally identify a network resource. In the UNIS model the id field is locally unique, while the full network resource URL is globally unique. For example there can exist a two network resources with id=id1 if the two resources are from different UNIS instances http://example1.com/nodes/id1 and http://example2.com/nodes/id1. Any UNIS network resource can have URN as an attribute and it’s recommended to use either perfSONAR or NML URN naming schemes.

NOTE: In the perfSONAR and NML community network resources are called network objects. However, UNIS has been designed with native REST API in mind [REST].

JSON Schema

See http://unis.crest.iu.edu/schema/20120709/networkresource.

Attributes

Name Value Description
$schema URI The schema that represents the current object.
id sting Network resource’s locally unique identifier.
selfRef URI self URL reference to the network resource.
ts timestamp time stamp of the last change on the network resource in nano-seconds.
urn URN URN name of the network resource. UNIS doesn’t mandate any specific URN schema, but it’s recommended to use either perfSONAR or NML URN naming schemes.
name string the network resource name.
description string text description of the network resource.
location object physical location of the network resource.
lifetimes list list of lifetimes of the network resource. Each lifetime is an object with two attributes start and end
status string The status of network resource.
properties object additional custom properties for network resource.
relations object relations for this network resource to other network resources.

Example

The following is a simple network resource example:

{
    "$schema": "http://unis.crest.iu.edu/schema/20120709/networkresource#",
    "id": "resource1",
    "selfRef": "http://example.com/resource1",
    "ts": 1336775637000,
    "name": "example1",
    "urn": "urn:ogf:network:example1",
    "description": "This is a sample network resource",
    "lifetimes": [
        {
            "start": "2012-05-10T22:37:02+00:00",
            "end": "2012-05-11T22:37:02+00:00"
        }
    ],
    "location": {
        "institution": "Indiana University"
    },
    "properties": {
        "custom_prop1": "value1"
    },
    "relations": {
        "custom_relation": [
            {
                "href": "http://example.com/resource2",
                "rel": "full"
            }
        ]
    }
}

Footnotes

[REST]http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm#sec_5_2_1