[Css-csts] Issues with the EXECUTE-DIRECTIVE operation

John Pietras john.pietras at gst.com
Mon Jul 12 11:03:25 EDT 2010


CSTSWG colleagues ---

I have encountered a few issues with regard to the EXECUTE-DIRECTIVE
operation:

 

1.  The common EXECUTE-DIRECTIVE invocation is defined in section 3 as
having directive-identifier and directive-qualifier parameters. The
corresponding ASN.1 specification (ExecuteDirectiveInvocation)
structures these as two separate parameters:

 

ExecuteDirectiveInvocation          ::=   SEQUENCE

{     standardInvocationHeader      StandardInvocationHeader

,     directiveIdentifier           CHOICE

      {           integer           [0] IntPos

      ,           extended          [1] Extended

      }

,     directiveQualifier            CHOICE

      {           octetString       [0] OCTET STRING

      ,           null              [1] NULL

      ,           extended          [2] EMBEDDED PDV

      }

,     extensionParameter            Extended

}

 

My concern is about the directiveQualifier. For the data parameters of
the TRANSFER-DATA and PROCESS-DATA oeprations, we've said that once a
choice between the octetString value and extended value is made for a
certain service/procedure, all child services must comply with that
choice. However, here's a case where for some directiveIdentifier values
an octetString qualifier is appropriate, but for other
directiveIdentifier values a qualifier may be unnecessary and tehre for
a null qualifier value would be appropriate. It seems that in the case
of the EXECUTE-DIRECTIVE, the choice needs to be able to be made on the
basis of each value of the directiveQualifier. How do we make that clear
to the reader/specification writer/implementer?

 

2. As stated above, the  common EXECUTE-DIRECTIVE invocation is defined
in section 3 as having separate directive-identifier and
directive-qualifier parameters. However, the Data Processing procedure
does not conform to this. 

 

According to 4.9.4.4, (EXECUTE-DIRECTIVE (confirmed))

"This procedure defines the following value to the set of values
possible for the directive-identifier parameter:

                'reset' - Request that the Service Provider clear the
data unit buffer. The value of the directive-qualifier shall identify
the next process data 
                 identifier the Service Provider shall consider. "

 

The corresponding ASN.1 doesn't treat the directiveQualifier value as a
separate parameter, but as a part of the 'reset' value of the
directiveIdentifier itself.

 

DataProcessingExecDirectiveInvocationDirectiveIdExt   ::=   CHOICE

{     reset                   [0]   NextProcessDataIdentifier

,     extensionDirectiveId    [1]   Extended

}

dpExecDirInvocDirectiveIdExt  OBJECT IDENTIFIER ::= {dpExtProcedureParam
5}

 

-- directive-qualifier (this is not an extension):

NextProcessDataIdentifier     ::=   DataSequenceCounter

 

Best regards,

John

 

 

________________________________

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ccsds.org/pipermail/css-csts/attachments/20100712/5b4db4d0/attachment.html


More information about the Css-csts mailing list