6.3 ObjectTypes

6.3.1 OPENSCSPoolManagerObjectType

The OPEN-SCS model for pool management when adapted to OPC UA results in a number of methods attached to a pool manager object, as illustrated in Figure 11.

A pool manager may manage one or more pools of serial numbers. Depending on the profile supported the pool manager may:

Return serial numbers of the appropriate state based on a request method from a specified pool in the server (SNRequestUnassigned, SNRequestUnallocated and SNRequestAllocated).

Accept returned serial numbers of the appropriate state based on a return method to a specified pool in the server (SNReturnUnallocated and SNReturnAllocated).

Accept unsolicited serial number of a specified state to be added to the server’s pool (SNtoUnallocated, SNtoAllocated and SNtoEncoded).

The pool manager may use pool selection criteria to determine which pool is to be used on a method call. The pool selection criteria available from the pool manager are available in the PoolSelectionCriteria key/value pairs. The selection criteria are read only and are defined by the configuration of the pool manager server.

The formats for the returned serial number are defined by the SNFormat parameter and must match a serial number format defined in the pool manager server.

Figure 11 – Pool Manager Methods and Data
6.3.1.1 OPENSCSPoolManagerObjectType Definition

Table 4 is the AddressSpace definition of an OPENSCSPoolManagerObjectType.

Table 4 – OPENSCSPoolManagerObjectType AddressSpace Definition
Attribute Value
BrowseNameOPENSCSPoolManagerObjectType
IsAbstractFalse
References NodeClass BrowseName Data Type TypeDefinition Other
Subtype of the BaseObjectType defined in OPC 10000-5
0:HasComponentMethodSNRequestUnassignedSee 6.3.1.2O
0:HasComponentMethodSNRequestUnallocatedSee 6.3.1.3O
0:HasComponentMethodSNRequestAllocatedSee 6.3.1.4O
0:HasComponentMethodSNReturnUnallocatedSee 6.3.1.5O
0:HasComponentMethodSNReturnAllocatedSee 6.3.1.6O
0:HasComponentMethodSNtoUnallocatedSee 6.3.1.7O
0:HasComponentMethodSNtoAllocatedSee 6.3.1.8O
0:HasComponentMethodSNtoEncodedSee 6.3.1.9O
0:HasPropertyVariablePoolSelectionCriteriaOPENSCSKeyValueDataType[]0:PropertyTypeM
0:HasPropertyVariableSNFormat0:String[]0:PropertyTypeM
0:HasPropertyVariableMaxSNRequestable0:UInt320:PropertyTypeM
0:HasPropertyVariableMaxSNReturnable0:UInt320:PropertyTypeM
0:HasPropertyVariableMaxSNPushable0:UInt320:PropertyTypeM

PoolSelectionCriteria - Defines a read-only set of key value pairs which define the selection criteria used to determine the pool from which serial numbers are requested or returned. For example: “GTIN”, “SCSCGP”, and “PoolID”.

SNFormat – Defines a read-only set of possible serial number formats that may be used on pushes, requests or returns of serial numbers. For example: “SERIALONLY”, “LITERAL”, and “EPCURI”. As a minimum the value “SERIALONLY” shall be supported.

MaxSNRequestable - Defines a read-only maximum number of serial numbers which can be requested in a single method call. If the request methods are not supported, this number shall be zero.

MaxSNReturnable - Defines a read-only maximum number of serial numbers which can be returned in a single method call. If the return methods are not supported, this number shall be zero.

MaxSBPushable - Defines a read-only maximum number of serial numbers which can be pushed to the server in a single method call. If the push methods (SNtoUnallocated, SNtoAllocated, SNtoEncoded) methods are not supported, this number shall be zero.

6.3.1.2 SNRequestUnassigned Method

SNRequestUnassigned –This Method requests unassigned serial numbers from an OPC UA Server that is performing serial number management for a specific Serial Number Collection.

The signature of this Method is specified below. Table 5 and Table 6 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNRequestUnassigned (
		[in]	String				SNCollectionID
	[in]	UInt32				Count
	[in]	String				SNFormat
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String			   	RequestToken
	[out]	OPENSCSReturnEnum	   	ReturnStatus
	[out]	OPENSCSSNCollectionDataType 	SNCollection
	[out]	String			   	ReturnedRequestToken
	);
Table 5 – SNRequestUnassigned Method Arguments
ArgumentDescription
SNCollectionID

Identifies the Serial Number Collection from which unassigned Serial Numbers are to be provided.

If the Serial Number Collection ID does not match a Serial Number Collection managed by the Information Provider, then an “Invalid Serial Number Collection” error is returned.

If the Serial Number Collection ID is not provided, then the default Serial Number Collection shall be selected.

Count

Identifies the number of Serial Numbers requested.

If fewer Serial Numbers are available from the pool, then are requested, then an “Insufficient Serial Numbers” status is returned, and the number of Serial Numbers that are available are returned.

SNFormat

Defines the desired serial number format (see the OPENSCS PSS Specification for format definitions) for the requested serial numbers.

If the Serial Number Format is not known to the server, then an “Invalid Serial Number Format” error is returned.

PoolSelectionCriteria

Identified value to be used by the method provider to determine which Serial Numbers to return.

If no Pool Selection Criteria is defined, then the default Pool Selection Criteria of the method provider is used.

If the pool selection criteria is not known to the server, then an “Invalid selection Criteria” error is returned.

RequestToken

If it has a value of null, then this is the initial request for Serial Numbers.

If the value is not null, then this is a follow-on request because the number of Serial Numbers requested in a previous call were not available as an immediate response.

RequestTokens are provided to 1) support asynchronous transactions, where there can be delays between requests and the availability of Serial Numbers, and 2) where more Serial Numbers are requested than can be exchanged in a single transaction.

If the Request Token has a value not understood by the Information Provider, then an “Invalid Parameter” error is returned.

ReturnStatusReturns the status of the method execution.
SNCollectionContains requested Serial Number collection with Serial Numbers of the specified state. If no serial numbers are returned (not available), then this argument returns null.
ReturnedRequestToken

If null or an empty string, then all requested numbers have been sent.

If non null or an empty string, then there are more serial numbers to be returned and the returned Request Token is to be passed as an input parameter on a subsequent call.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 6 – SNRequestUnassigned Method AddressSpace Definition
Attribute Value
BrowseNameSNRequestUnassigned
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.3 SNRequestUnallocated Method

SNRequestUnassigned –This method requests unallocated serial numbers from an OPC UA Server that is performing serial number management for a specific Serial Number Pool.

The signature of this Method is specified below. Table 7 and Table 8 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNRequestUnallocated (
		[in]	String				SNCollectionID
	[in]	UInt32				Count
	[in]	String				SNFormat
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String			   	RequestToken
	[out]	OPENSCSReturnEnum	   	ReturnStatus
	[out]	OPENSCSSNCollectionDataType 	SNCollection
	[out]	String			   	ReturnedRequestToken
	);
Table 7 – SNRequestUnallocated Method Arguments
Argument Description
SNCollectionIDSee 6.3.1.2.
CountSee 6.3.1.2.
SNFormatSee 6.3.1.2.
PoolSelectionCriteriaSee 6.3.1.2.
RequestTokenSee 6.3.1.2.
ReturnStatusSee 6.3.1.2.
SNCollectionSee 6.3.1.2.
ReturnedRequestTokenSee 6.3.1.2.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 8 – SNRequestUnallocated Method AddressSpace Definition
Attribute Value
BrowseNameSNRequestUnallocated
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.4 SNRequestAllocated Method

SNRequestAllocated –This method requests allocated serial numbers from an OPC UA Server that is performing serial number management for a specific Serial Number Pool.

The signature of this Method is specified below. Table 9 and Table 10 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNRequestAllocated (
		[in]	String				SNCollectionID
	[in]	UInt32				Count
	[in]	String				SNFormat
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String			   	RequestToken
	[out]	OPENSCSReturnEnum	   	ReturnStatus
	[out]	OPENSCSSNCollectionDataType SNCollection
	[out]	String			   	ReturnedRequestToken
	);
Table 9 – SNRequestAllocated Method Arguments
Argument Description
SNCollectionIDSee 6.3.1.2.
CountSee 6.3.1.2.
SNFormatSee 6.3.1.2.
PoolSelectionCriteriaSee 6.3.1.2.
RequestTokenSee 6.3.1.2.
ReturnStatusSee 6.3.1.2.
SNCollectionSee 6.3.1.2.
ReturnedRequestTokenSee 6.3.1.2.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 10 – SNRequestAllocated Method AddressSpace Definition
Attribute Value
BrowseNameSNRequestAllocated
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.5 SNReturnUnallocated Method

SNReturnUnallocated – This method sends unallocated serial numbers back to an OPC UA Server that is performing serial number management of unassigned serial numbers for a specific Serial Number Pool.

The signature of this Method is specified below. Table 11 and Table 12 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNReturnUnallocated (
		[in]	OPENSCSSNCollectionDataType	SNCollection
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String				SNFormat
	[out]	OPENSCSReturnEnum		ReturnStatus
	);
Table 11 – SNReturnUnallocated Method Arguments
Argument Description
SNCollection

Contains a Serial Number Collection from which Serial Numbers were originally provided.

If the Serial Number Collection ID does not match a Serial Number Collection managed by the Information Provider, then an “Invalid Serial Number Collection” error is returned.

PoolSelectionCriteria

Identified value to be used by the method provider to determine which pool to return the Serial Numbers to.

If no Pool Selection Criteria is defined, then the default Pool Selection Criteria of the method provider is used.

If the pool selection criteria is not known to the server, then an “Invalid selection Criteria” error is returned.

SNFormat

The serial number format of the serial numbers being returned.

If the Serial Number Format is not known to the method provider, then an “Invalid Serial Number Format” error is returned.

ReturnStatusReturns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 12 – SNReturnUnallocated Method AddressSpace Definition
Attribute Value
BrowseNameSNReturnUnallocated
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.6 SNReturnAllocated Method

SNReturnAllocated – This method sends allocated serial numbers back to an OPC UA Server that is performing serial number management of unallocated serial numbers for a specific Serial Number Pool.

The signature of this Method is specified below. Table 13 and Table 14 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNReturnAllocated (
		[in]	OPENSCSSNCollectionDataType	SNCollection
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String				SNFormat
	[out]	OPENSCSReturnEnum		ReturnStatus
	);
Table 13 – SNReturnAllocated Method Arguments
Argument Description
SNCollectionSee 6.3.1.5.
PoolSelectionCriteriaSee 6.3.1.5.
SNFormatSee 6.3.1.5.
ReturnStatusSee 6.3.1.5.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 14 – SNReturnAllocated Method AddressSpace Definition
Attribute Value
BrowseNameSNReturnAllocated
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.7 SNtoUnallocated Method

SNtoUnallocated – This method sends unsolicited serial numbers to be placed into the unallocated state to an OPC UA Server that is performing serial number management for a specific Serial Number Pool.

The signature of this Method is specified below. Table 15 and Table 16 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNtoUnallocated (
	[in]	OPENSCSSNCollectionDataType 	SNCollection
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String				SNFormat
	[out]	OPENSCSReturnEnum	  	ReturnStatus
	);
Table 15 – SNtoUnallocated Method Arguments
Argument Description
SNCollectionThe Serial Number Collection containing Serial Numbers.
PoolSelectionCriteria

Identified value to be used to identify the pool that unused Serial Numbers can be sent back to.

If the pool selection criteria is not known to the server, then an “Invalid selection Criteria” error is returned.

SNFormat

The serial number format of the pushed serial numbers.

If the Serial Number Format is not known to the method provider, then an “Invalid Serial Number Format” error is returned.

ReturnStatusReturns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 16 – SNtoUnallocated Method AddressSpace Definition
Attribute Value
BrowseNameSNtoUnallocated
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.8 SNtoAllocated Method

SNtoAllocated – This method sends unsolicited serial numbers to be placed into the reserved state to an OPC UA Server that is performing serial number management for a specific Serial Number Pool.

The signature of this Method is specified below. Table 17 and Table 18 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNtoAllocated (
	[in]	OPENSCSSNCollectionDataType 	SNCollection
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String				SNFormat
	[out]	OPENSCSReturnEnum	  	ReturnStatus
	);
Table 17 – SNtoAllocated Method Arguments
Argument Description
SNCollectionSee 6.3.1.7.
PoolSelectionCriteriaSee 6.3.1.7.
SNFormatSee 6.3.1.7.
ReturnStatusSee 6.3.1.7.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 18 – SNtoAllocated Method AddressSpace Definition
Attribute Value
BrowseNameSNtoAllocated
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.1.9 SNtoEncoded Method

SNtoEncoded – This method sends unsolicited serial numbers to be placed into the encoded state to an OPC UA Server that is performing serial number management for a specific Serial Number Pool. It may include label properties associated with the encoding run.

The signature of this Method is specified below. Table 19 and Table 20 specify the Arguments and AddressSpace representation, respectively.

Method Signature

	SNtoEncoded (
		[in]	OPENSCSSNCollectionType	SNCollection
	[in]	OPENSCSKeyValueDataType[]	PoolSelectionCriteria
	[in]	String				SNFormat
	[out]	OPENSCSReturnEnum		ReturnStatus
	);
Table 19 – SNtoEncoded Method Arguments
Argument Description
SNCollectionIdentifies the Collection with Serial Numbers.
PoolSelectionCriteriaThe pool selection criteria which are used to return unused serial numbers to a serial number management server.
SNFormat

The serial number format of the pushed serial numbers.

If the Serial Number Format is not known to the method provider, then an “Invalid Serial Number Format” error is returned.

ReturnStatusReturns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 20 – SNtoEncoded Method AddressSpace Definition
Attribute Value
BrowseNameSNtoEncoded
IsAbstractTrue
Reference NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory

6.3.2 OPENSCSEventManagerObjectType

The OPEN-SCS model for event management when adapted to OPC UA results in several methods attached to an event manager object.

The event manager receives unsolicited events through the event methods. All but one of the event methods have the same method signature. The specific methods supported by an event manager are defined in profiles.

Figure 12 – Event Manager Methods and Data

Table 21 is the AddressSpace definition of an OPENSCSEventManagerObjectType.

Table 21 – OPENSCSEventManagerObjectType AddressSpace Definition
Attribute Value
BrowseNameOPENSCSEventManagerObjectType
IsAbstractFalse
References NodeClass BrowseName Data Type TypeDefinition Other
Subtype of the BaseObjectType defined in OPC 10000-5
0:HasComponentObjectEPCISStreamTemporaryFileTransferTypeOptional
0:HasComponentMethodSNInvalidatingEventSee 6.3.2.1Optional
0:HasComponentMethodLabelsEncodingEventSee 6.3.2.3Optional
0:HasComponentMethodLabelsScrappingEventSee 6.3.2.4.Optional
0:HasComponentMethodLabelsInspectingEventSee 6.3.2.5.Optional
0:HasComponentMethodLabelsSamplingEventSee 6.3.2.6.Optional
0:HasComponentMethodSIDCommissioningEventSee 6.3.2.7.Optional
0:HasComponentMethodSIDDestroyingEventSee 6.3.2.8.Optional
0:HasComponentMethodSIDShippingEventSee 6.3.2.9.Optional
0:HasComponentMethodSIDInspectingEventSee 6.3.2.10.Optional
0:HasComponentMethodSIDDecommissioningEventSee 6.3.2.11Optional
0:HasPropertyVariableMaxEvents0:UInt320:PropertyTypeMandatory
0:HasPropertyVariableMaxEPCISObjectEventSIDs0:UInt320:PropertyTypeMandatory
0:HasPropertyVariableMaxEPCISaggregationEvents0:UInt320:PropertyTypeMandatory

MaxEvents - Defines the read-only maximum number of SN, Label, or SID events which can be received in a single method call.

MaxEPCISObjectEventSIDs – Defines the read-only maximum number of SIDs (SGTINs) in EPCIS object events that may be written in a single EPCISStream file transfer.

MaxEPCISAggregationEvents – Defines the read-only maximum number of EPCIS aggregation events that may be written in a single EPCISStream file transfer

6.3.2.1 EPCISStream Object

The EPCIS file transfer services are provided through a TemporaryFileTransferType, defined in OPC 10000-5. The transferred information is in the form of an EPCIS structured XML file, as described in Annex C. The EPCISStream object is used to push EPCIS Object Events (with various Business Steps in business process such as “urn:epcglobal:cbv:bizstep:commissioning”, “urn:epcglobal:cbv:bizstep:inspecting”, “urn:epcglobal:cbv:bizstep:packing”, “urn:epcglobal:cbv:bizstep:shipping”) and EPCIS Object Aggregation Events (with Business Steps as ‘urn:epcglobal:cbv:bizstep:packing’) to an OPC UA EventManager server.

The OPC UA TemporaryFileTransferType method GenerateFileForWrite is used to start the write file transaction. A successful call of this Method creates a temporary FileType Object and returns the NodeId of this Object and the file handle to access the Object. (From OPC 10000-5). The returned FileType object is not browsable in the AddressSpace and can only be accessed with the NodeId and FileHandle returned by the method in the same Session. The returned FileType Object is used to transfer the file stream between OPC UA Client and Server.

The EPCIS structured file is then transferred in blocks to the Event Manager server using the Write method. Once the transfer is complete the CloseAndCommit method is used to close the transfer, and the EventManager processes the transferred information.

The general use of the EPCISStream to transfer an EPCIS file is illustrated in Figure 13.

Figure 13 – EPCIS File Transfer Example

The GenerateFileForRead method of the EPCISStream object is not specified and shall always return an error from the EventManager.

The generateOptions is used for the GenerateFileForWrite to transfer arguments to the EventManager server that match the arguments used in the EventManager server’s event methods.

An EventManager Server shall specify OPENSCSEventStreamArgumentDataType as the concrete DataType of for the Argument Structure for the generateOptions argument in the instance of the GenerateFileForWrite method.

6.3.2.2 SNInvalidatingEvent Method

SNInvalidatingEvent – This method is used to send unsolicited notification of Serial Number Invalidating events to an OPC Server that is performing serial number event management.

The signature of this Method is specified below. Table 22 and Table 23 specify the Arguments and AddressSpace representation, respectively.

Signature

	SNInvalidatingEvent (
		[in]	OPENSCSSNCollectionDataType 	SNCollection 
	[in]	String				SNFormat
		[in]	OPENSCSKeyValueDataType[]	OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    	ReturnStatus
	);
Table 22 – SNInvalidatingEvent Method Arguments
Argument Description
SNCollectionIdentifies the Serial Number Collection.
SNFormatDefines the format of the serial numbers associated to the event.
OPENSCSEventContextZero or mode key value pairs that define additional context information for the event, such as order number or lot number.
ReturnStatusReturns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 23 – SNInvalidatingEvent Method AddressSpace Definition
Attribute Value
BrowseNameSNInvalidatingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.3 LabelsEncodingEvent Method

LabelsEncodingEvent – This method is used to send unsolicited notification of Labels Encoding events to an OPC Server that is performing label event management.

The signature of this Method is specified below. Table 24 and Table 25 specify the Arguments and AddressSpace representation, respectively.

Signature

	LabelsEncodingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 24 – LabelsEncodingEvent Method Arguments
Argument Description
LabelCollectionIdentifies the Label Collection with Serial Numbers and optional label properties.
SNFormatDefines the format of the serial numbers associated to the event.
OPENSCSEventContextZero or mode key value pairs that define additional context information for the event, such as order number or lot number.
ReturnStatusReturns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 25 – LabelsEncodingEvent Method AddressSpace Definition
Attribute Value
BrowseNameLabelsEncodingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.4 LabelsScrappingEvent Method

LabelsScrappingEvent – This method is used to send unsolicited notification of Labels Destroying events to an OPC Server that is performing label event management.

The signature of this Method is specified below. Table 26 and Table 27 specify the Arguments and AddressSpace representation, respectively.

Signature

	LabelsScrappingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 26 – LabelsScrappingEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 27 – LabelsScrappingEvent Method AddressSpace Definition
Attribute Value
BrowseNameLabelsScrappingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.5 LabelsInspectingEvent Method

LabelsInspectingEvent – This method is used to send unsolicited notification of Label Inspecting events to an OPC Server that is performing label event management.

The signature of this Method is specified below. Table 28 and Table 29 specify the Arguments and AddressSpace representation, respectively.

Signature

	LabelsInspectingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 28 – LabelsInspectingEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 29 – LabelsInspectingEvent Method AddressSpace Definition
Attribute Value
BrowseNameLabelsInspectingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.6 LabelsSamplingEvent Method

LabelsSamplingEvent – This method is used to send unsolicited notification of Label Sampling events to an OPC Server that is performing label event management.

The signature of this Method is specified below. Table 30 and Table 31specify the Arguments and AddressSpace representation, respectively.

Signature

	LabelsSamplingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 30 – LabelsInspectingEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 31 – LabelsInspectingEvent Method AddressSpace Definition
Attribute Value
BrowseNameLabelsInspectingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.7 SIDCommissioningEvent Method

SIDCommissioningEvent – This method is used to send unsolicited notification of SID Commissioning events to an OPC Server that is performing SID event management.

The signature of this Method is specified below.

Table 32 and Table 33 specify the Arguments and AddressSpace representation, respectively.

Signature

	SIDCommissioningEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 32 – SIDCommissioningEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 33 – SIDCommissioningEvent Method AddressSpace Definition
Attribute Value
BrowseNameSIDCommissioningEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.8 SIDDestroyingEvent Method

SIDDestroyingEvent – This method is used to send unsolicited notification of SID Destroying events to an OPC Server that is performing SID event management.

The signature of this Method is specified below. Table 34 and Table 35 specify the Arguments and AddressSpace representation, respectively.

Signature

	SIDDestroyingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 34 – SIDDestroyingEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 35 – SIDDestroyingEvent Method AddressSpace Definition
Attribute Value
BrowseNameSIDDestroyingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.9 SIDShippingEvent Method

SIDShippingEvent – This method is used to send unsolicited notification of SID Shipping events to an OPC Server that is performing SID event management.

The signature of this Method is specified below. Table 36 and Table 37 specify the Arguments and AddressSpace representation, respectively.

Signature

	SIDShippingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 36 – SIDShippingEvent Method Arguments
ArgumentDescription
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 37 – SIDShippingEvent Method AddressSpace Definition
Attribute Value
BrowseNameSIDShippingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.10 SIDInspectingEvent Method

SIDInspectingEvent – This method is used to send unsolicited notification of SID Inspecting events to an OPC Server that is performing SID event management.

The signature of this Method is specified below. Table 38 and Table 39 specify the Arguments and AddressSpace representation, respectively.

Signature

	SIDInspectingEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 38 – SIDInspectingEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 39 – SIDInspectingEvent Method AddressSpace Definition
Attribute Value
BrowseNameSIDInspectingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.2.11 SIDDecommissioningEvent Method

SIDDecommissioningEvent – This method is used to send unsolicited notification of SID Decommissioning events to an OPC Server that is performing SID event management.

The signature of this Method is specified below. Table 40 and Table 41 specify the Arguments and AddressSpace representation, respectively.

Signature

	SIDDecommissioningEvent (
		[in]	OPENSCSLabelCollectionDataType	LabelCollection 
	[in]	String					SNFormat
		[in]	OPENSCSKeyValueDataType[]		OPENSCSEventContext
	[out]	OPENSCSReturnEnum	    		ReturnStatus
	);
Table 40 – SIDDecommissioningEvent Method Arguments
Argument Description
LabelCollectionSee 6.3.2.3
SNFormatSee 6.3.2.3
OPENSCSEventContextSee 6.3.2.3
ReturnStatusSee 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 41 – SIDDecommissioningEvent Method AddressSpace Definition
Attribute Value
BrowseNameSIDDecommissioningEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory

6.3.3 OPENSCSAggregationManagerObjectType

The OPEN-SCS model for aggregation management when adapted to OPC UA results in two methods attached to an aggregation manager object.

The aggregation manager receives unsolicited events through the aggregation methods. The aggregation methods have the same method signature. The specific methods supported by an aggregation manager are defined in profiles.

Figure 14 – Aggregation Manager Methods and Data

Table 42 is the AddressSpace definition of an OPENSCSAggregationManagerObjectType.

Table 42 – OPENSCSAggregationManagerObjectType AddressSpace Definition
Attribute Value
BrowseNameOPENSCSAggregationManagerObjectType
IsAbstractFalse
References NodeClass BrowseName Data Type TypeDefinition Other
Subtype of the BaseObjectType defined in OPC 10000-5
0:HasComponentMethodAggregationPackingEventSee 6.3.3.1.M
0:HasComponentMethodAggregationUnpackingEventSee 6.3.3.2.M
0:HasPropertyVariableMaxAggregationEvents0:UInt320:PropertyTypeM

MaxAggregationEvents - Defines a read-only maximum number of AggregationElements for packing and unpacking events which can be received in a single method call.

6.3.3.1 AggregationPackingEvent Method

AggregationPackingEvent – This method is used to send unsolicited notification of Aggregation Packing events to an OPC Server that is performing aggregation management.

The signature of this Method is specified below. Table 43 and Table 44 specify the Arguments and AddressSpace representation, respectively.

Signature

	AggregationPackingEvent (
	  [in] OPENSCSAggregationDataType[] 	AggregationElement
	  [in] String					ParentSNFormat
	  [in] String					PackedElementSNFormat
	  [in] OPENSCSKeyValueDataType[]		AggregationContext
 	  [out] OPENSCSReturnEnum	    		ReturnStatus
	);
Table 43 – AggregationPackingEvent Method Arguments
Argument Description
AggregationElementSpecifies the parent element and the packed element collection that is to be added to the parent element.
ParentSNFormatDefines the format of the parent Serial Numbers associated to the event.
PackedElementSNFormatDefines the format of the packed element Serial Numbers associated to the event.
AggregationContextZero or mode key value pairs that define additional context information for the event, such as order number or lot number.
ReturnStatusReturns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 44 – AggregationPackingEvent Method AddressSpace Definition
Attribute Value
BrowseNameAggregationPackingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory
6.3.3.2 AggregationUnpackingEvent Method

AggregationUnpackingEvent – This method is used to send unsolicited notification of Aggregation Unpacking events to an OPC Server that is performing aggregation management.

The signature of this Method is specified below. Table 45 and Table 46 specify the Arguments and AddressSpace representation, respectively.

Signature

	AggregationUnpackingEvent (
	  [in] OPENSCSAggregationDataType[] 	AggregationElement
	  [in] String					ParentSNFormat
	  [in] String					PackedElementSNFormat
	  [in] OPENSCSKeyValueDataType[]		AggregationContext
 	  [out] OPENSCSReturnEnum	    		ReturnStatus
	);
Table 45 – AggregationUnpackingEvent Method Arguments
Argument Description
AggregationElement Specifies the parent element and the packed element collection that is to be removed from the parent element.
ParentSNFormatSee 6.3.3.1
PackedElementSNFormatSee 6.3.3.1
AggregationContextSee 6.3.3.1
ReturnStatusSee 6.3.3.1

Method Result Codes are defined as part of the Call service (see OPC 10000-4 and Table 95).

Table 46 – AggregationUnpackingEvent Method AddressSpace Definition
Attribute Value
BrowseNameAggregationUnpackingEvent
IsAbstractTrue
References NodeClass BrowseName DataType TypeDefinition ModellingRule
0:HasPropertyVariableInputArgumentsArgument[]0:PropertyTypeMandatory
0:HasPropertyVariableOutputArgumentsArgument[]0:PropertyTypeMandatory

6.3.4 OPENSCSSIDClassObjectType

SID Class objects are used to obtain information about the SID Classes that may be supported by a server. This information is read-only and is defined by the server, as illustrated in Figure 15.

Figure 15 – OPENSCS SID Class Data

Table 47 defines the structure of an OPENSCSSIDClassObjectType.

Table 47 – OPENSCSSIDClassObjectType
Attribute Value
BrowseNameOPENSCSSIDClassObjectType
IsAbstractFalse
References Node Class BrowseName Data Type TypeDefinition

Other

Subtype of the BaseObjectType defined in OPC 10000-5
0:HasPropertyVariableSIDClassID0:String0:PropertyType

M, RO

0:HasPropertyVariableSIDClassOwnerString0:PropertyType

M, RO

0:HasPropertyVariableSIDClassDescriptionString0:PropertyType

O, RO

0:HasPropertyVariableSyntaxSpecificationString0:PropertyType

M, RO

0:HasPropertyVariableAllowedCharacterSetString0:PropertyType

M, RO

0:HasPropertyVariableIntendedUseString0:PropertyType

O, RO

0:HasPropertyVariableSIDClassPropertyOPENSCSSIDClassPropertyDataType[]0:PropertyType

O, RO

SIDClassID - An identification of the SID Class of the Serial Number Collection. For example: GS1:SSCC

SIDClassOwner - An identification of the owning, or controlling organization, which defines the information in the SID Class. For example: GS1The Global Language of Business, www.gs1.org

SIDClassDescription - Additional information and description about the SID Class.

SyntaxSpecification - Defines the rules for the syntax of a SID. The format is not defined in this specification and must be negotiated between Information Providers and Information Requesters during design or change management of a system.

AllowedCharacterSet - A string containing the allowed characters that may be used in representing the Serial Number in a SID.

IntendedUse - A string containing a natural language description of the use of the SID. Defines the intended use of the SID Class, such as logistics tracking or pallet aggregations.

SIDClassProperty - An array of property elements, each of which may have associated label property definitions.