Contents SAS Publisher Previous Next

Specifying Name/Value Pairs

Publishers can specify name/value pairs that describe the contents of the entire package and of individual package items. With these descriptors, primarily SAS channel subscribers who use SAS Subscription Manager can construct filters for determining what packages, in entirety, get delivered to them. Although subscribers can filter at the package item level for the message queue only, a developer can write retrieval programs that filter at both the package level and the package item level for all transports.

The publisher can specify one or more space-separated name/value pairs for package items and entire packages in the following forms:

Specifying Name/Value Pairs for a Package Item

Here is an example of specifying a single name/value pair for a package item:

type=dataset

The publisher identifies the item in the package as a data set.

To describe the package item with finer granularity, the publisher can specify multiple name/value pairs. A space separates each name/value pair.

Here is an example of specifying multiple name/value pairs for a package item:

type=dataset hub=RDU

The publisher identifies the item in the package as a data set, which is relevant to the RDU hub only.

Although a subscriber can filter at the package item level for a message queue only, a developer can write a retrieval program that filters at the package item level for all transports.

The publisher can specify name/value pairs when publishing a package item using the following methods:

Using SAS Publisher to Specify Name/Value Pairs for a Package Item

For an item inserted in a package, you may specify one or more name/value pairs in the optional Package Name/Value group box in the Specify Item to Insert window. Here is an example:

package item name/value pair
Name/Value Pair Field in the Specify Item to Insert Window

This package entry is a data set, whose data is relevant to the RDU hub only.

You may specify one or more name/value pairs. Leaving the field blank ignores the option.

For more information about specifying name/value pairs in the Where to Publish SAS Publisher tab, see

Using the Publish Package Interface to Specify Name/Value Pairs for a Package Item

When creating a package entry, you assign name/value pairs to the nameValue property in the INSERT_entry-type SAS CALL routine, where values for entry-type are The following code shows the assignment of name/value pairs to a data set package entry.
   libname = "HR";
   memname = "capacityHistory";
   description = "Flight Capacity History (Data)";
   nameValue = "type=dataset hub=RDU";
   call insert_dataset(pid, libname, memname, description, nameValue, rc);
  
This nameValue property specifies a data set whose data is relevant to the RDU hub only.

For complete details about programmatically specifying name/value pairs, see

Specifying Name/Value Pairs for an Entire Package

Here is an example of specifying a single name/value pair for an entire package:

market=US

The publisher identifies the entire package as relevant to a US market only.

To describe the contents of an entire package with finer granularity, the publisher can specify multiple name/value pairs. A space separates each name/value pair.

Here is another example of specifying multiple name/value pairs for an entire package:

market=US type=report content=ticketsales Quarter4 priority=high

This high priority package contains one or more reports about fourth quarter ticket sales that is relevant to a US market only.

With knowledge of a package's name/value pairs, both subscribers and developers of package retrieval applications can construct and apply filters that control package delivery.

The publisher can specify name/value pairs when publishing the package using these methods

Using SAS Publisher to Specify Name/Value Pairs for Entire Packages

For the archive, message queue, and SAS channel subscriber delivery types only, you may specify one or more name/value pairs in the optional Package Name/Value group box in the Where to Publish SAS Publisher tab. Here is an example:

package name/value pair
Name/Value Pair Field in the Where to Publish Tab

This high priority package contains one or more reports about fourth quarter ticket sales that are relevant to a US market only.

You may specify one or more name/value pairs. Leaving the field blank ignores the option.

For more information about specifying name/value pairs in the Where to Publish SAS Publisher tab, see

Using the Publish Package Interface to Specify Name/Value Pairs for an Entire Package

For the archive, message queue, and SAS channel subscriber delivery types only, you assign name/value pairs to the nameValue property in the PACKAGE_BEGIN SAS CALL routine.

The following code shows the assignment of name/value pairs to an entire package

packageID=0;
rc=0;
desc = "Nightly run.";
nameValue = "market=US type=report content=ticketsales Quarter4 priority=high";
CALL PACKAGE_BEGIN(packageId, desc, nameValue, rc);
This nameValue property specifies a high priority package that contains one or more reports about fourth quarter ticket sales that are relevant to a US market only.

For complete details about programmatically specifying name/value pairs for an entire package, see

Contents SAS Publisher Previous Next