skip navigation
URC Consortium Logo

You are here: MyURC.org > TR > res-prop-vocab1.0-20090429 > Draft

Resource Property Vocabulary 1.0 (DRAFT)

Draft Technical Report 2009-04-29

This version: http://myurc.org/TR/res-prop-vocab1.0-20090429/
Latest version: http://myurc.org/TR/res-prop-vocab1.0/
Previous draft version: http://myurc.org/TR/res-prop-vocab1.0-20081124/ (changes marked)
Latest approved version: (none)
Editor: Gottfried Zimmermann

Copyright © 2008-2009, Universal Remote Console Consortium (URCC)

Abstract

This document specifies a core set of generic and resource type-specific properties that are recommended to be used in the URC ecosystem. This applies to resources that are stored on the resource server, as well as for others like devices in the network.

This specification is directed in particular to resource authors (for describing their resources upon uploading to a resource server) and developers of UCHs and UCH components such as UIPMs, TDMs and TAs (for querying matching resources from a resource server).

Status of this Document

This is a public Draft Technical Report, developed by the editor, hereby made available for review by URCC members and the public.

Comments on this document should be sent to the editor.

Publication as a Draft Technical Report does not imply endorsement by the URCC membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

Open Issues [to be removed before release]

  1. What to do with http://myurc.org/ns/res#categoryTaxonomyName and http://myurc.org/ns/res#categoryCode for a target?

Change Log [to be removed before final release]

NOTE: The change log is in reverse chronological order.

2009-04-29 Gottfried Zimmermann:

2008-11-24 Gottfried Zimmermann:

2008-08-14 Gottfried Zimmermann:


Table of Contents:


1. Introduction

This document specifies a core set of generic and resource type-specific properties that are recommended to be used in the URC ecosystem. This applies to resources that are stored on the resource server, as well as for others like devices in the network. This specification is directed in particular to resource authors (for describing their resources upon upload to a resource server) and developers of UCHs and UCH components such as UIPMs, TDMs and TAs (for querying matching resources from a resource server).

Other (non-core) property names may be used to describe resources, as long as the property names do not conflict with the core set defined in this document. In order to avoid potential conflicts with future versions of core properties and with other non-core properties, the use of author-owned URIs as namespaces for non-core property names is strongly recommended.

Resources are stored on the resource server with their metadata. Metadata is expressed as a set of resource properties attached to a resource. A resource property name is a string representing an (absolute) URI (not a URI reference which may be relative) [RFC 3986], being a concatenation of a namespace identifier and a property name. Often, the property name is represented as fragment component of the URI, but that is not required.

Matching of property names shall be case-insensitive. The value of a property shall be a string. Note that specific encoding rules may apply when coding a property name (and value) in a given context (for example as URI component, or inside XML content).

One property may occur multiple times for a resource, but with different values, thus expressing that each value applies to the resource (AND operation).

A property may have one or multiple descriptors, allowing for variations of the property value along the descriptors' value spaces (e.g. language codes). The purpose of a descriptor is to find the most relevant property value among alternatives. A descriptor name shall be a string (e.g. "lang" for language), and its value a string (e.g. "en" for the English language code).

Since descriptors are specific to properties, this specification defines descriptors in the context of the properties that they apply to.

A human understandable description should be available for each property name at its URI which should be resolvable. A good practice is to describe a set of properties (called "vocabulary") in an RDF schema file, with a property's URI consisting of the location of the RDF schema file and the property name as fragment identifier (e.g. "http://myurc.org/ns/res#forTargetInstance" is described in the RDF schema file at http://myurc.org/ns/res).

2. Generic Properties

The following properties describe resources of all types, where applicable.

Property Name Description Values Usage
http://myurc.org/ns/res#name Globally unique identifier (URI) of a resource. Note that multiple versions of one resource may exist (see http://purl.org/dc/terms/modified below).

Note: Arguably, the property http://www.w3.org/1999/02/22-rdf-syntax-ns#about (attribute 'rdf:about') [ISO/IEC 24752-5:2008] could be used as property name for a globally unique identifier. However, there is a slight difference between the meaning of http://www.w3.org/1999/02/22-rdf-syntax-ns#about and http://myurc.org/ns/res#name in that http://www.w3.org/1999/02/22-rdf-syntax-ns#about assigns a resource to a structured set of property-value pairs (called "description") rather than specifying the name of the resource itself.

URI [RFC 3986], not necessarily resolvable required for resources that are stored on a resource server
http://purl.org/dc/terms/modified [DCMI Terms]

Date on which the resource was changed most recently. Used to identify the version of a resource.

xsd:dateTime [XSD Datatypes] in any of the following formats:
  • yyyy-mm-ddThh:mm:ssZ
  • yyyy-mm-ddThh:mm:ss+zz:zz
  • yyyy-mm-ddThh:mm:ss-zz:zz

Example: "2008-08-14T15:40:02+02:00"

required for resources that are stored on a resource server
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem.

For packaged resources (e.g. provided as a zip file), the http://myurc.org/ns/res#type property reflects the resource type of the index file. See property http://myurc.org/ns/res#indexFile below.

URI [RFC 3986], recommended to be resolvable. See sections below for type-specific values. required
http://purl.org/dc/terms/conformsTo Conformance to a standard [DCMI Terms]. URI [RFC 3986], not necessarily resolvable. See sections below for type-specific values. recommended for resources that comply to a standard
http://myurc.org/ns/res#mimeType MIME type [RFC 2046] of the resource. This property is used by the resource server to determine the MIME type for a resource served to a client upon resource retrieval [RES-SERV-HTTP]. MIME type [RFC 2046], from any of the following trees [RFC 4288]: recommended for resources that are stored on a resource server
http://myurc.org/ns/res#instanceId Instance identifier for the resource. Applicable to devices in a network, in particular. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#dynamicLibClass Name of the main class of a resource that is a dynamic library file. Applies only to certain types of dynamic libraries (e.g. JAR files). xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#forTargetName Specifies the target (class) name for which the resource can be applied. URI [RFC 3986], not necessarily resolvable. optional
http://myurc.org/ns/res#forTargetInstance Specifies the target instance for which the resource can be applied [ISO/IEC 24752-5:2008]. If not specified, the resource can be applied to all target instances. xsd:string [XSD Datatypes] optional
http://purl.org/dc/elements/1.1/title A name given to the resource [DCMI Terms].

A language tag may be specified as the value of the descriptor "lang" [RFC 4646] [IANA Language Tags].

The title can be used as a human-readable label for the resource (class).

xsd:string [XSD Datatypes], recommended to be short (not exceeding 5 words). recommended
http://purl.org/dc/elements/1.1/description Human readable description of the resource [DCMI Terms].

A language tag should be specified as the value of the descriptor "lang" [RFC 4646] [IANA Language Tags].

xsd:string [XSD Datatypes], may be long. optional
http://purl.org/dc/elements/1.1/language A language of the resource, if applicable [DCMI Terms]. Language tag [RFC 4646], as registered in [IANA Language Tags] optional
http://purl.org/dc/elements/1.1/creator An entity primarily responsible for making the resource [DCMI Terms]. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#creatorUri URI of creator. URI [RFC 3986] - should be resolvable. recommended
http://purl.org/dc/elements/1.1/publisher An entity responsible for making the resource available [DCMI Terms] xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#publisherUri URI of publisher. URI [RFC 3986] - should be resolvable. recommended
http://purl.org/dc/elements/1.1/contributor An entity responsible for making contributions to the resource (other than the creator) [DCMI Terms]. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#contributorUri URI of contributor. URI [RFC 3986] - should be resolvable. optional
http://myurc.org/ns/res#serialNumber Serial number of a resource instance. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#upc Universal Product Code (UPC) of a resource. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#indexFile Path and name of index/main file of the resource (applicable if resource is provided as file package, e.g. zip file). The index file is the entry point for accessing the aggregated resource.

If property http://myurc.org/ns/res#indexFile is used, property http://myurc.org/ns/res#indexFileMimeType (see below) is required.

Path and file name for the index file as part of the resource package.

Examples: "/index.html", "/main/start.php"

recommended if resource is provided as package (e.g. zip file) with a dedicated index file
http://myurc.org/ns/res#indexFileMimeType Specifies the MIME type of the index file of the resource. MIME type [RFC 2046]. required if http://myurc.org/ns/res#indexFile is specified

Other property names from metadata vocabularies, in particular from the Dublin Core Metadata Initiative [DCMI Terms], may be used as generic resource properties, if applicable. However, only those properties listed in this document are considered to be "core properties" in the URC ecosystem.

3. Resource Type Specific Properties

This section defines resource type specific core properties for resources. The type of a resource is determined by the property http://myurc.org/ns/res#type.

In this section, whenever a generic property (see section Generic Properties) is reiterated for a specific resource type, the type-specific definition overwrites the generic one (but only if not otherwise noted).

3.1. Target Description Properties

Target descriptions are defined in [ISO/IEC 24752-4:2008].

Target descriptions are described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#name Globally unique identifier (URI) of the target description. Note that the target description name is different from the target name (which is the value of the 'about' attribute on the <target> element of the target description). URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#forTargetName Name of the target that the target description describes. This is the value of the 'about' attribute on the <target> element in the target description. URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#type URC-specific type of resource. "http://myurc.org/restypes#targetdesc" required
http://purl.org/dc/terms/conformsTo Conformance to a standard [DCMI Terms]. "http://myurc.org/iso24752-4/2007" required
http://myurc.org/ns/res#mimeType MIME type for target description. "application/urc-targetdesc+xml" [ISO/IEC 24752-4:2008] required

3.2. Socket Description Properties

Socket descriptions are defined in [ISO/IEC 24752-2:2008].

Target descriptions are described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#name Globally unique identifier (URI) of the socket description. Note that the socket description name is different from the socket name (which is the value of the 'about' attribute on the <uiSocket> element in the socket description). URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#forSocketName Name of the socket that the socket description describes. This is the value of the 'about' attribute on the <uiSocket> element in the socket description. URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#type URC-specific type of resource. "http://myurc.org/restypes#uisocketdesc" required
http://purl.org/dc/terms/conformsTo Conformance to a standard [DCMI Terms]. "http://myurc.org/iso24752-2/2007" required
http://myurc.org/ns/res#mimeType MIME type for target description. "application/urc-uisocketdesc+xml" [ISO/IEC 24752-2:2008] required
http://myurc.org/ns/res#forTargetName Target name(s) that the socket belongs to (as specified by the 'http://myurc.org/res#name' property of a URC-compatible target). May occur multiple times if a socket belongs to multiple targets. URI [RFC 3986], not necessarily resolvable recommended

3.3. Resource Sheet Properties

Resource Sheets are defined in [ISO/IEC 24752-5:2008].

Resource sheets are described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#name Globally unique identifier (URI) for the resource sheet. This is the value of the 'rdf:about' attribute on the <ResSheet> element in the resource sheet. URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#type URC-specific type of resource. "http://myurc.org/restypes#ressheet" required
http://purl.org/dc/terms/conformsTo Conformance to a standard [DCMI Terms]. "http://myurc.org/iso24752-5/2007" required
http://purl.org/dc/elements/1.1/format Specifies an atomic resource format that applies to all atomic resources that are contained in the described resource sheet [ISO/IEC 24752-5:2008]. MIME type [RFC 2046], from any of the following trees [RFC 4288]: recommended if resource sheet contains atomic resources with a single MIME type (e.g. "image/jpeg").
http://purl.org/dc/elements/1.1/type Specifies an atomic resource type that applies to all atomic resources that are contained in the described resource sheet [ISO/IEC 24752-5:2008]. One of the following: Collection, Dataset, Event, Image, InteractiveResource, MovingImage, PhysicalObject, Service, Software, Sound, StillImage, Text [DCMI Terms]. recommended if resource sheet contains atomic resources for a single type (e.g. "Text").
http://myurc.org/ns/res#forLang Specifies a language that is used in every use context of every Atomic Resource Description and that is assigned to all Grouping Resources contained in the Resource Sheet described [ISO/IEC 24752-5:2008]. Language tag [RFC 4646], as registered in [IANA Language Tags] recommended if resource sheet contains atomic resources for a single language.
http://myurc.org/ns/res#aResDescForDomain Specifies a domain (given as URI) that is used in every use context for every Atomic Resource that is contained in the described Resource Sheet [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable recommended if resource sheet contains atomic resources
http://myurc.org/ns/res#role Specifies a role URI that is used in every use context of every Atomic Resource that is contained in the described Resource Sheet [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable.

[ISO/IEC 24752-5:2008] defines the following set of pre-defined roles. Other roles may be used.

  • http://myurc.org/ns/res#label
  • http://myurc.org/ns/res#help, http://myurc.org/ns/res#help-purpose, or http://myurc.org/ns/res#help-effect
  • http://myurc.org/ns/res#accesskey
  • http://myurc.org/ns/res#keyword
  • http://myurc.org/ns/res#location
recommended if resource sheet contains atomic resources with a single role
http://myurc.org/ns/res#groupingForDomain Specifies a domain that is used in every Grouping Resource that is contained in the described Resource Sheet [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable recommended if resource sheet contains groupings

3.3.1. Resource Sheet Package Properties

If a resource sheet refers to externally stored resources, it may be provided as a package together with the external resources, e.g. as zip file. In this case, resource sheet packages are described by resource sheet properties (see section Resource Sheet Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#type URC-specific type of resource. "http://myurc.org/restypes#ressheet" required
http://myurc.org/ns/res#mimeType MIME type for resource sheet MIME type [RFC 2046] of the package file.

Example: "application/zip"

required
http://myurc.org/ns/res#indexFile Path and name of the resource sheet (applicable if resource sheet is provided as part of a file package, e.g. zip file).

If property http://myurc.org/ns/res#indexFile is used, property http://myurc.org/ns/res#indexFileMimeType (see below) is required.

Path and file name for the resource sheet file as part of the resource package.

Examples: "/English.rsheet", "/main/Main.rsheet"

recommended if resource is provided as package (e.g. zip file) with a dedicated index file
http://myurc.org/ns/res#indexFileMimeType Specifies the MIME type of the resource sheet file of the package. "application/urc-ressheet+xml" [ISO/IEC 24752-5:2008] required if resource sheet is provided as part of a package

3.4. Resource Directory Properties

Resource Directories are defined in [ISO/IEC 24752-5:2008].

Resource directories are described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#type URC-specific type of resource. "http://myurc.org/restypes#resdir" required
http://purl.org/dc/terms/conformsTo Conformance to a standard [DCMI Terms]. "http://myurc.org/iso24752-5/2007" required
http://myurc.org/ns/res#mimeType MIME type for resource sheet "application/urc-resdir+xml" [ISO/IEC 24752-5:2008] required
http://purl.org/dc/elements/1.1/format Specifies a format that applies to every atomic resource that is (directly or indirectly) contained in the resource directory [ISO/IEC 24752-5:2008]. MIME type [RFC 2046], from one of the following trees [RFC 4288]: recommended if resource directory contains resource sheets with atomic resources with a single MIME type (e.g. "image/jpeg").
http://purl.org/dc/elements/1.1/type The nature or genre of the resource [DCMI Terms].

Specifies an atomic resource type that applies to every atomic resource that is (directly or indirectly) contained in the resource directory [ISO/IEC 24752-5:2008].

One of the following: Collection, Dataset, Event, Image, InteractiveResource, MovingImage, PhysicalObject, Service, Software, Sound, StillImage, Text [DCMI Terms] recommended if resource directory contains resource sheets with atomic resources for a single type (e.g. "Text").
http://myurc.org/ns/res#forLang Specifies a language that is used for every use context in every atomic resource, grouping resource and UIID that is (directly or indirectly) contained in the resource directory [ISO/IEC 24752-5:2008]. Language tag [RFC 4646], as registered in [IANA Language Tags] recommended if resource directory contains resource sheets with atomic resources for a single language.
http://myurc.org/ns/res#aResDescForDomain Specifies a domain that is used in every use context of every atomic resource that is (directly or indirectly) contained in the resource directory [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable recommended if resource directory contains resource sheets with atomic resources
http://myurc.org/ns/res#role Specifies a role that is used in every use context of every atomic resource that is (directly or indirectly) contained in the resource directory [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable.

[ISO/IEC 24752-5:2008] defines the following set of roles which may be extended:

  • http://myurc.org/ns/res#label
  • http://myurc.org/ns/res#help, http://myurc.org/ns/res#help-purpose, or http://myurc.org/ns/res#help-effect
  • http://myurc.org/ns/res#accesskey
  • http://myurc.org/ns/res#keyword
  • http://myurc.org/ns/res#location
recommended if resource directory contains resource sheets with atomic resources with a single role
http://myurc.org/ns/res#groupingForDomain Specifies the domain(s) of the user interface elements that occur as the leaves of the group tree described by the grouping resource [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable recommended if resource directory contains resource sheets with groupings
http://myurc.org/ns/res#uiidForDomain Specifies a domain that applies to every UIID that is (directly or indirectly) contained in the resource directory [ISO/IEC 24752-5:2008]. URI [RFC 3986], not necessarily resolvable recommended if resource directory contains UIID descriptions.

3.5. TDM Properties

Target Discovery Modules (TDMs) are specified in [UCH].

TDMs are described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/restypes#tdm" [UCH] required
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the UCH specification that the TDM conforms to [UCH]. Version URL of a UCH spec version, e.g. "http://myurc.org/TR/uch1.0/". required
http://myurc.org/ns/res#mimeType MIME type [RFC 2046] of the TDM. Any registered [IANA MIME Types] or unregistered MIME type. recommended
http://myurc.org/ns/res#devicePlatform Identifier for the device platform of the TDM. Platform-specific identifier, e.g. "UPnP". recommended

3.6. TA Properties

Target Adapters (TAs) are specified in [UCH].

TAs are described by generic resource properties (see section Generic Properties), generic TA properties, and platform-specific TA properties.

3.6.1. Generic TA Properties

Property Name Description Values Usage
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/restypes#ta" [UCH] required
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the UCH specification that the TA conforms to [UCH]. Version URL of a UCH spec, e.g. "http://myurc.org/TR/uch1.0/". required
http://myurc.org/ns/res#mimeType MIME type [RFC 2046] of the TA. Any registered [IANA MIME Types] or unregistered MIME type. recommended
http://myurc.org/ns/res#devicePlatform Identifier for the device platform of the TA. Platform-specific identifier, e.g. "UPnP". recommended
http://myurc.org/ns/res#forTargetName Specifies the target (class) name for which the TA works with. The value "*" specifies that the TA works with all target classes. URI [RFC 3986], not necessarily resolvable. recommended
http://myurc.org/ns/res#forTargetInstance Specifies the target instance for which the TA can be applied [ISO/IEC 24752-5:2008]. If not specified, the TA can be applied to all target instances. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceUpc Universal Product Code (UPC) of the target device that the TA applies to. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceSerialNumber Serial number of the target device that the TA applies to.

Note: This property restricts the use of the TA to single instances of targets. Cf. http://myurc.org/ns/res#forTargetInstance.

xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#tdUri URI of the target description pertaining to the TA. If relative, it is based on the location of the TA (or where it was retrieved from). URI [RFC 3986], absolute or relative, must be resolvable. optional

3.6.2. TA Properties for UPnP Platform

Property Name Description Values Usage
http://myurc.org/ns/res#devicePlatform Identifier for the device platform of the TA. "UPnP" required
http://myurc.org/ns/res#deviceType UPnP device type, as given in the UPnP XML Device Description, as content of <deviceType>. URN [UPNP ARCHITECTURE] recommended
http://myurc.org/ns/res#deviceCreator Device manufacturer name, as given in the UPnP XML Device Description, as content of <manufacturer>. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceCreatorUrl Device manufacturer URL, as given in the UPnP XML Device Description, as content of <manufacturerURL>. URI [RFC 3986] - should be resolvable optional
http://myurc.org/ns/res#deviceModelName Device model name, as given in the UPnP XML Device Description, as content of <modelName>. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceModelNumber Device model number, as given in the UPnP XML Device Description, as content of <modelNumber>. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceModelUrl Device model URL, as given in the UPnP XML Device Description, as content of <modelURL>. URI [RFC 3986] - should be resolvable optional
http://myurc.org/ns/res#deviceUpc Universal Product Code (UPC) of the device, as given in the UPnP XML Device Description, as content of <UPC>. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceSerialNumber Device serial number, as given in the UPnP XML Device Description, as content of <serialNumber>.

Note: Should only be used if the TA is specific to a particular target instance.

xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#deviceUdn Unique Device Name (UDN), as given in the UPnP XML Device Description, as content of <UDN>.

Note: Should only be used if the TA is specific to a particular target instance.

xsd:string [XSD Datatypes] optional

3.7. UIPM Properties

User Interface Protocol Modules (UIPMs) are specified in [UCH].

UIPMs are described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/restypes#uipm" [UCH] required
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the UCH specification that the UIPM conforms to [UCH]. Version URL of a UCH spec, e.g. "http://myurc.org/TR/uch1.0/". required
http://myurc.org/ns/res#mimeType MIME type [RFC 2046] of the UIPM. Any registered [IANA MIME Types] or unregistered MIME type. recommended
http://myurc.org/ns/res#forTargetName Specifies the target (class) name for which the UIPM can be applied.

Note that, if multiple URI entries exist for this property, the UIPM is applicable to any one of a set of (alternate) targets.

URI [RFC 3986], not necessarily resolvable.

"*": target-generic UIPM - applies to any target class (but only one at a time).

"all": UIPM applies to the complete set of all targets.

required
http://myurc.org/ns/res#forSocketName Specifies the name (URI) of a socket that the UIPM maps to.

Note that, if there are multiple URI entries of this property, the UIPM maps to the set of specified sockets (at the same time).

URI [RFC 3986], not necessarily resolvable.

"*": socket-generic UIPM - applies to any socket (but only one at a time).

"all": UIPM applies to the set of all sockets of the target.

optional
http://myurc.org/ns/res#forTargetInstance Specifies the target instance for which the UIPM can be applied [ISO/IEC 24752-5:2008]. If not specified, the resource can be applied to all target instances.

Note: Use only if the UIPM is specific to a particular target instance.

xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#urlScheme Specifies a scheme for controllers to connect to the UIPM via a URL.

Can be used by the UIPM as 'scheme' parameter in function IUIPMListener.startUriService() [UCH], if UIPM communicates with controllers via URLs.

Scheme component of URI [RFC 3986].

Examples: "http", "ftp", "urn", "vnc".

optional
http://myurc.org/ns/res#urlPortNo Specifies a port number for controllers to connect to the UIPM via a URL.

Can be used by the UIPM as 'port' parameter in function IUIPMListener.startUriService() [UCH], if UIPM communicates with controllers via URLs.

Port number.

For example, "80" is the default port number for HTTP.

optional
http://myurc.org/ns/res#urlBasePath Specifies a base path for controllers to connect to the UIPM via a URL.

Can be used by the UIPM as 'basePath' parameter in function IUIPMListener.startUriService() [UCH], if UIPM communicates with controllers via URLs.

Some first part of path component of a URI [RFC 3986], starting with a slash ("/").

For example, the base path "/UCH/URC-HTTP" with HTTP means that all HTTP requests to the UCH that begin with "http://ip-address/UCH/URC-HTTP" should be serviced (dispatched) to the UIPM.

optional
http://myurc.org/ns/res#protocolShortName Specifies a short name for the user interface protocol that the UIPM offers to controllers.

Can be used by the UIPM as 'protocolShortName' parameter in function IUIPMListener.addCompatibleUI() [UCH], if UIPM communicates with controllers via URLs.

Any values allowed for the 'shortName' attribute of a <protocol> element in a UIList [UCH].

Examples: "HTTP/HTML", "RDP", "VNC", "CE-HTML-1.0", "URC-HTTP", "XRT".

optional
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the URC-HTTP protocol specification that the UIPM conforms to [UCH] (only applicable to URC-HTTP UIPMs, ie. Version URL of a UCH spec version, e.g. "http://myurc.org/TR/uch1.0/". required

3.7.1. URC-HTTP UIPM Properties

A URC-HTTP UIPM is a UIPM that offers the URC-HTTP protocol as an interface to clients/controllers.

A URC-HTTP UIPM is described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the URC-HTTP protocol specification that the UCH conforms to [URC-HTTP].

Note: This property is in addition to http://purl.org/dc/terms/conformsTo on UIPMs (see section UIPM Properties). For URC-HTTP UIPMs, http://purl.org/dc/terms/conformsTo shall thus occur twice (but with different values).

Version URL of a URC-HTTP spec, e.g. "http://myurc.org/TR/urc-http-protocol2.0/". required
http://myurc.org/ns/res#protocolShortName Specifies a short name for the user interface protocol that the UIPM offers to controllers/clients. "URC-HTTP" required

3.8. UIPM Client Properties

UIPM clients are applications and scripts that are interfacing with the UCH via some UIPM. Some UIPM clients may be simple web pages (typically HTML pages with embedded scripts or objects running on any web browser) that can be retrieved from the UCH's web server.

Property Name Description Values Usage
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/restypes#uipm-client" [UCH] required
http://myurc.org/ns/res#wrapsProtocolShortName Specifies a short name for the user interface protocol that the UIPM client uses in interfacing with the UIPM. Any values allowed for the 'shortName' attribute of a <protocol> element in a UIList [UCH].

Examples: "HTTP/HTML", "RDP", "VNC", "CE-HTML-1.0", "URC-HTTP", "XRT".

required
http://myurc.org/ns/res#protocolShortName Specifies a short name for the user interface protocol that the UIPM client offers (as a wrapper to a protocol that the UIPM offers). Any values allowed for the 'shortName' attribute of a <protocol> element in a UIList [UCH].

Examples: "HTTP/HTML", "RDP", "VNC", "CE-HTML-1.0", "URC-HTTP", "XRT".

recommended
http://myurc.org/ns/res#mimeType MIME type [RFC 2046] of the resource. This property is used by the resource server to determine the MIME type for a resource served to a client upon resource retrieval [RES-SERV-HTTP]. MIME type [RFC 2046].

Some UIPM client resources may be provided as a file package (e.g. zip file), consisting of all files needed by the controller to run the UIPM client.

recommended
http://myurc.org/ns/res#indexFile Path and name of index file of the UIPM client (applicable if UIPM client is provided as file package). The index file is the entry point for controllers for using the UI protocol, as specified by the property http://myurc.org/ns/res#protocolShortName. Path and file name for the index file as part of the UIPM client package.

Examples: "/index.html", "/main/start.php"

required if UIPM client resource is provided as package with an index file
http://myurc.org/ns/res#indexFileMimeType Specifies the MIME type of the index file of the UIPM client resource. MIME type [RFC 2046].

Examples: "text/html", "application/xhtml+xml", "application/ce-html+xml", "application/x-ce-html+xml"

required if UIPM client resource is provided as package with an index file
http://myurc.org/ns/res/protocolInfo#capProfile Specifies an XML fragment that indicates the user interface capabilities of one profile of the UIPM client. This XML fragment should be advertised in the UIList as part of the <protocolInfo> content.

This property may occur multiple times. Multiple occurrences with different values indicate different profiles which should all be included in the <protocolInfo> content.

String (XML fragment), possibly containing line breaks.

Example using the Remote UI Capability Description, as specified in [CEA-2014-A]:

<relatedData xmlns=”urn:schemas-ce-org:ce-html-server-caps-1-0” >
  <profilelist>
    <ui_profile name="MD_UIPROF">
      <ext>
        <width> 240 </width>
        <height> 320 </height>
      </ext>
    </ui_profile>
  </profilelist>
</relatedData>

Example using the Remote UI Capability Description, as specified in [UAProf]:

<relatedData xmlns=”http://www.wapforum.org/UAPROF/ccppschema-19991014”>
  <HardwarePlatform>
    <Model>HTC Diamond</Model>
  </HardwarePlatform>
  <SoftwarePlatform>
    <OSName>Windows Mobile</OSName>
    <CcppAccept>text/html</CcppAccept>
  </SoftwarePlatform>
</relatedData>

recommended
http://myurc.org/ns/res#forTargetName Specifies the target (class) name for which the UIPM client can be applied.

Note that, if multiple URI entries exist for this property, the UIPM client is applicable to any one of a set of (alternate) targets.

URI [RFC 3986], not necessarily resolvable.

"*": target-generic UIPM client - applies to any target class (but only one at a time).

"all": UIPM client applies to the complete set of all targets.

required
http://myurc.org/ns/res#forSocketName Specifies the name (URI) of a socket that the UIPM client maps to.

Note that, if there are multiple URI entries of this property, the UIPM client maps to the set of specified sockets (at the same time).

URI [RFC 3986], not necessarily resolvable.

"*": socket-generic UIPM client - applies to any socket (but only one at a time).

"all": UIPM client applies to the set of all sockets of the target.

optional

3.8.1. URC-HTTP Client Properties

A URC-HTTP client is a client of a URC-HTTP UIPM, i.e. an application or script that interfaces with the UCH via the URC-HTTP protocol [URC-HTTP] provided by the URC-HTTP UIPM.

A URC-HTTP Client is described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the URC-HTTP protocol specification that the UCH conforms to [URC-HTTP]. Version URL of a URC-HTTP spec, e.g. "http://myurc.org/TR/urc-http-protocol2.0/". required
http://myurc.org/ns/res#wrapsProtocolShortName Specifies a short name for the user interface protocol that the UIPM client uses in interfacing with the UIPM. "URC-HTTP" required
http://myurc.org/ns/res#forSocketName Specifies the name (URI) of a socket that the UIPM client maps to.

Note that, if there are multiple URI entries of this property, the UIPM client maps to the set of specified sockets (at the same time).

URI [RFC 3986], not necessarily resolvable.

"*": socket-generic UIPM client - applies to any socket (but only one at a time).

"all": UIPM client applies to the set of all sockets of the target.

required

3.9. UCH Properties

A Universal Control Hub (UCH) is specified in [UCH].

A UCH is described by generic resource properties (see section Generic Properties), and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/TR/uch/" [UCH] required
http://purl.org/dc/terms/conformsTo Specifies the version-specific URL of the UCH specification that the UCH conforms to [UCH]. Version URL of a UCH spec, e.g. "http://myurc.org/TR/uch1.0/". required
http://myurc.org/ns/res#baseUri Base URI for the location of the UCH. URI [RFC 3986] - should be resolvable optional

3.10. Target Properties

Note that this specification distinguishes between URC-compatible targets, as defined in [ISO/IEC 24752-1], and UCH-internal targets, as defined in [UCH] (which are not URC-compatible).

3.10.1. URC-Compatible Target Properties

This section applies to URC-compatible targets, as defined in [ISO/IEC 24752-1].

URC-compatible targets are described by generic resource properties (see section Generic Properties), if applicable, and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#name Unique identifier for target class. This is the value of the ‘about’ attribute in the target description. URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/restypes#target" required
http://myurc.org/ns/res#instanceId Instance identifier for the target. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#friendlyName Friendly name for the device instance. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#description Name of the target description (see section Target Description Properties, property 'http://myurc.org/ns/res#name') that describes the target.

Note that the target and its target description are two different resources with different names, though closely related. Only a target description can be stored on a resource server.

URI [RFC 3986], not necessarily resolvable optional
http://myurc.org/ns/res#descriptionAt Resolvable URI for a target description file. URI [RFC 3986], must be resolvable optional

3.10.2. UCH-Internal Target Properties

This section applies to targets that are connected to Target Adapters [UCH]. These targets are devices or services on the network that can be remotely controlled through a UCH, but are not URC compatible.

UCH-internal targets are described by generic resource properties (see section Generic Properties), if applicable, and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#name Unique identifier for the class of the target. Maybe equal to modelUri (see below). URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/TR/uch/#target" [UCH] required
http://myurc.org/ns/res#instanceId Instance identifier for the target. xsd:string [XSD Datatypes] required
http://myurc.org/ns/res#friendlyName Friendly name for the device instance. xsd:string [XSD Datatypes] required
http://myurc.org/ns/res#devicePlatform Identifier for the device platform of the target. Platform-specific identifier, e.g. "UPnP". recommended
http://myurc.org/ns/res#deviceType Type of the device. Platform-specific. optional
http://myurc.org/ns/res#modelName Device model name. Platform-specific. optional
http://myurc.org/ns/res#modelNumber Device model number. Platform-specific. optional
http://myurc.org/ns/res#modelUri URI identifying the device model. URI [RFC 3986], not necessarily resolvable optional

3.11. Socket Properties

Sockets are machine interfaces to targets at runtime, based on [ISO/IEC 24752-2].

Sockets are described by generic resource properties (see section Generic Properties), if applicable, and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#name Unique identifier for socket class. This is the value of the ‘about’ attribute on <uiSocket> in the socket description. URI [RFC 3986], not necessarily resolvable required
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/restypes#socket" [UCH] required
http://myurc.org/ns/res#description Name of the socket description (see section Socket Description Properties, property 'http://myurc.org/ns/res#name') that describes the socket. Note that the socet and its socket description are two different resources with different names, though closely related. Socket description name (URI). optional
http://myurc.org/ns/res#descriptionAt Resolvable URI for a socket description file. URI [RFC 3986], must be resolvable optional

3.12. Client Properties

Clients are devices on the network that act as controllers to a UIPM [UCH].

Clients (and their users) are described by generic resource properties (see section Generic Properties), if applicable, and any of the following properties:

Property Name Description Values Usage
http://myurc.org/ns/res#type Type of resource with regard to the URC ecosystem. "http://myurc.org/TR/uch/#client" [UCH] required
http://myurc.org/ns/res#instanceId Instance identifier for the client. This may be the IP address of the controller. xsd:string [XSD Datatypes] required
http://myurc.org/ns/res#authorizationCode An authorization code for opening a session. The authorization code may have been provided by the UCH. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#friendlyName Friendly name for the client instance. xsd:string [XSD Datatypes] optional
http://myurc.org/ns/res#devicePlatform Identifier for the device platform of the client. Platform-specific identifier, e.g. "UPnP". optional
http://myurc.org/ns/res#deviceType Type of the client device. Platform-specific. optional
http://myurc.org/ns/res#modelName Device model name. Platform-specific. optional
http://myurc.org/ns/res#modelNumber Device model number. Platform-specific. optional
http://myurc.org/ns/res#modelUri URI identifying the device model. URI [RFC 3986], not necessarily resolvable optional

3.13. Configuration File Properties

Configuration files are used by URC ecosystem components that have some kind of generic behavior that can be configured for specific contexts. For example, a configuration file for a TA could specify IR codes for device-communication, as they map to the elements of the device's socket.

In general, configuration files should be described with the same set of properties as for the component they configure. For example, a TA configuration file would use the properties as specified in TA Properties.

There is one exception: A configuration file shall have a 'http://myurc.org/ns/res#type' property value that is distinct from that of the component it configures. It is recommended to use a 'http://myurc.org/ns/res#type' property value that is derived from (or extends) the 'http://myurc.org/ns/res#name' property value of the component. For example, if a TA's 'http://myurc.org/ns/res#name' has value "http://example.com/ta/platform", all pertaining configuration files could have a 'http://myurc.org/ns/res#type' property with value "http://example.com/ta/platform/configfile".

4. References

4.1. Normative References

For dated references, only the edition cited applies. For undated references, the latest edition of the referenced document (including any amendments) applies.

[DCMI Terms]
DCMI Metadata Terms, http://dublincore.org/documents/dcmi-terms/.
[IANA Language Tags]
IANA: Language Subtag Registry, http://www.iana.org/assignments/language-subtag-registry.
[IANA MIME Types]
IANA: MIME Media Types, http://www.iana.org/assignments/media-types/.
[RFC 2046]
IETF RFC 2046, Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types, Nov. 1996, http://www.ietf.org/rfc/rfc2046.txt
[RFC 3986]
IETF RFC 3986, Uniform Resource Identifier (URI): Generic Syntax, January 2005, http://www.ietf.org/rfc/rfc3986.txt
[RFC 4288]
IETF RFC 4288, Media Type Specifications and Registration Procedures, Dec. 2005, http://www.ietf.org/rfc/rfc4288.txt
[RFC 4646]
IETF RFC 4646, Tags for Identifying Languages, Sep. 2006, http://www.ietf.org/rfc/rfc4646.txt
[UCH]
URC Consortium: Universal Control Hub Specification. Latest specification available at: http://myurc.org/TR/uch/
[XSD Datatypes]
W3C Recommendation: XML Schema Part 2: Datatypes, W3C Recommendation 02 May 2001, http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/

4.2. Informative References

[CEA-2014-A]
Web-based Protocol and Framework for Remote User Interface on UPnP™ Networks and the Internet (Web4CE). CEA, 2007.
[ISO/IEC 24752-1:2008]
Information Technology - User Interfaces - Universal Remote Console - Part 1: Framework. ISO, 2008.
[ISO/IEC 24752-2:2008]
Information Technology - User Interfaces - Universal Remote Console - Part 2: User Interface Socket Description. ISO, 2008.
[ISO/IEC 24752-4:2008]
Information Technology - User Interfaces - Universal Remote Console - Part 4: Target Description. ISO, 2008.
[ISO/IEC 24752-5:2008]
Information Technology - User Interfaces - Universal Remote Console - Part 5: Resource Description. ISO, 2008.
[UAProf]
WAG UAPROF, Version 10-Nov-1999. Wireless Application Group User Agent Profile Specification. Wireless Application Protocol Forum, 1999. Specification available at: http://www.wapforum.org/what/technical/SPEC-UAProf-19991110.pdf
[URC-HTTP]
URC Consortium: URC-HTTP Protocol Specification. Latest specification available at: http://www.myurc.org/TR/urc-http-protocol/
[RES-SERV-HTTP]
Resource Server HTTP Interface specification, URC Consortium. Latest specification available at: http://myurc.org/TR/res-serv-http/

This site is maintained by the University of Wisconsin Trace Center, a member of the Universal Remote Console Consortium.