[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