[Smwg] RID SSF-R2-2, regarding the 'status' parameter
Barkley, Erik J (3970)
erik.j.barkley at jpl.nasa.gov
Wed Jul 26 00:19:48 UTC 2017
It strikes me that the abstract header type (SchemaCssmSmInfoEntityHeader-v1_0_0.xsd) should have no target namespace and that when it is included into a "payload" schema that we should in fact have a target namespace at that level. So that means that rather than declaring (in SchemaCssmSimpleSchedule-V1_0_0.xsd) "targetNamespace="urn:ccsds:schema:cssm:1.0.0" we should in fact do something like "targetNamespace="urn:ccsds:schema:cssm:SSF:1.0.0" (assuming we still want to version the namespaces). It strikes me then that the status definition that is put in here is a restriction that is in the SSF sub namespace and that presumably the status coming from, say the PIF, would be in the PIF namespace.
I think this addresses Marcin's concern and strikes me as being a fairly clean approach.
From: John Pietras [mailto:john.pietras at gst.com]
Sent: Thursday, July 20, 2017 4:05 AM
To: Barkley, Erik J (3970) <erik.j.barkley at jpl.nasa.gov>; CCSDS Service Mgmt WG <smwg at mailman.ccsds.org>
Subject: RID SSF-R2-2, regarding the 'status' parameter
CSSMWG colleagues -
For what it's worth, when I wrote the last draft (June 2016) of the Service Agreement and Configuration Profile book
It was based on the common Service Management Header (SrvMgtHeader) class *including* the 'status' parameter, which was at the time cast simply as String32, not an Enumeration type as it is in the current Simple Schedule book . The Service Agreement/Config Profile book constrained the string values to certain contents, but it did not redefine the base type (which is the issue in RID SSF-R2-2
The formulation of the 'status' parameter in this way - as a simple string type in the SrvMgtHeader base class in which the individual specifications would constrain the string contents to specific sets of strings - was the result of discussions that we had on the exact topic that is the source of RID SSF-R2-2: how to avoid multiple definitions of the same element type (parameter) in the same namespace. Those discussions and the resulting decision to treat the 'status' parameter that way seem to have been forgotten in the intervening year or so.
NOTE 1 - We also discussed an approach in which we would keep the status parameter as an enumerated value, but pre-determine all of the possible values that all of the future services *might* use so as to keep one definition of the type, but we concluded that that would counter the concept of "extensible".
NOTE 2 - We recognized that casting the 'status' parameter as a simple String type would require application-level validation (i.e., above XML validation), but that an enumerated-value 'status' that contained all possible values across all format books would still require application-level validation to ensure that the value is correct for correct for the given format.
So if you want to keep things in the same namespace, I think that there are two possible solutions to the RID:
1. Return to the previous approach, in which the (simple) String-typed 'status' parameter belongs to the base SrvMgtHeader class, and each data format specified the allowed string value(s) for that format.
2. Adopt Marcin's solution of creating a format-specific enumerated-value status type that has a unique name.
And of course, creating separate namespaces (also as proposed by Marcin) would also solve this problem.
From: SMWG [mailto:smwg-bounces at mailman.ccsds.org] On Behalf Of Barkley, Erik J (3970)
Sent: Tuesday, July 18, 2017 7:03 PM
To: CCSDS Service Mgmt WG
Subject: [Smwg] Preliminary RID dispositions uploaded
Thank you to those of you who participated in the RID disposition session at today's teleconference. The dispositions that were recorded in the spreadsheet during our WebEx session have been uploaded to the CWE and may be retrieved via the link below.
For those not at the teleconference, the goal is to have the final dispositions by August 1st.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the SMWG