Changes in the pull request are detailed below (constructed from a diff between current develop branch and this pull request)
GENERAL CHANGES
Corrected comments in, or added comments to, classes, attributes and data types.
<> stereotype removed from all entities.
General improvements to diagram structure/layout.
Corrections to CONDTIONAL_MANDATORY from MANDATORY along with addition of a condition for many attributes that are 0..x. Defaults added to many attributes to assist in construction of condition statements.
Correction of wordings of CONDITIONAL_MANDATORY statements normalized to “Mandatory where…”.
General correction from RW –-> R and correction to many stereotypes to WRITE_NOT_ALLOWED (which was broadly inconsistent with Read Only statement).
RPCs removed.
MANDATORY --> CONDITIONAL_MANDATORY (OR OPTIONAL) (CLASSES AND DATATYPES)
The following lists attributes in classes/datatypes which are CONDITIONAL_MANDATORY and provides the condition statement “Mandatory where…”
AlarmConditionDetectorDetail (Deprecated)
alarmDetectorState: Mandatory where the detector state is not default.
Default added.
legacyProperties: Mandatory where legacy properties are to be conveyed.
AvailableStream
streamState: Mandatory where stream state is not ALWAYS default.
Default added
streamId: [1 --> 0..1]: Mandatory where an alternative id to the uuid is available.
Added comment text:… . (alternative to the uuid).
connectionProtocol [1 --> 0..1]: Mandatory where not default and multiple options offered in the supported stream type
CompactedLogDetails
tombstoneRetention [1 --> 0..1]: Mandatory where not default.
Default added
compactionDelay [1 --> 0..1]: Mandatory where not default.
Default added
ConditionDetector
measuredEntityUuid: Mandatory where there is a standard TAPI entity (normally the case).
conditionNormalizedName: Mandatory where the condition has a normalized name.
measuredEntityClass: Mandatory where the measured entity class is known
detectorUuid: Mandatory where the detector has a normalized form with a uuid
measuredEntityLocalId: Mandatory where the measured entity is a local class and hence needs local id as well as parent uuid
ConnectionProtocolDetails
allowedConnectionProtocols: Mandatory if not default.
Default added
DynamicStreamData (from StreamMonitor and then adjusted)
idOfLastRecordWrittenToLog: Mandatory where the most recent record written is being recorded.
idOfLastRecordReadFromLog: Mandatory where last record read is being recorded
LogRecord
LogRecordHeader: [1 --> 0..1] Mandatory where log record header properties are to be conveyed.
LogRecordBody: Mandatory where log record body properties are to be conveyed
LogRecordBody
eventTimeStamp: [1 --> 0..1] Mandatory where event time is not conveyed via another property.
eventSource: Mandtory where not default.
Default added
additionalEventInfo: Mandatory where there is additional info to convey
parentAddress: Mandatory where the class has a parent and the parent is not context
LogRecordHeader
tapiContext: [1 --> 0..1] Mandatory where there is information related to more than one tapi context in the stream.
token: [1 --> 0..1] Mandatory where the stream type is from a compacted log OR it offers an opportunity to recover from a particular record using the token.
Added comment text:… For a basic log solution this may simply be the sequence number.
logAppendTimeStamp: [1 --> 0..1] Mandatory for compacted logs.
entityKey: [1 --> 0..1] Mandatory for compacted logs.
recordType: [1 --> 0..1] Mandatory where not default..
recordAuthenticityToken: [1 0..1] Mandatory where authenticity method providing a token is required.
SupportedStreamType
streamTypeName: Mandatory where assisted human interpretation is required
recordRetention: [1 --> 0..1] Mandatory if not default
Default added
segmentSize: Mandatory where log is segmented, and segment size is considered relevant for client application usage
streamTypeContent: Mandatory if the stream propagates TAPI entities. If not present a separate augment MUST explain stream content.
logStorageStrategy: [1 --> 0..1] Mandatory if not default
Default added
logRecordStrategy: [1 --> 0..1] Mandatory if not default
Default added
ApproxDateAndTime
startTimeStamp: Mandatory where the time is only approximately known and where the event is known to have occurred after a particular time.
spread: Mandatory if not default
Default added
sourcePrecision: Mandatory if not default
Default added
LegacyProperties
perceivedSeverity: Mandatory where severity is known
serviceAffect: Mandatory where it is known whether the condition detected is service affecting or not
isAcknowledged: Mandatory where there is a known state related to user acknowledgement of the condition.
additionalAlarmInfo: OPTIONAL
OTHER CHANGES
AvailableStream
connectionAddress: [1 1..*]
Added comment text: … There may be a sequence of operations required, in which case, these should be listed as separate strings. A string may include wildcard substatements. A single string may list alternatives separated by an appropriate delimiter.
Added comment text: (s). Where there is a list: - all protocols must use the same encoding format - there will be one or more available streams per connection protocol
LogRecordHeader
token
Added comment text: … For a basic log solution this may simply be the sequence number.
fullLogRecordOffsetId
Added comment text: This property must minimally provide a logging sequence number. Note that when compaction is active, the streamed sequence may not have sequence numbers that simply increment by one. In a complex…
StreamAdminContext
_streamMonitor: Note in condition: Note that this may be an empty list
Added comment text: Note that this may be an empty list
StreamContext
_availableStream: Note in condition Note that this may be an empty list
Added comment text: Note that this may be an empty list
_supportedStreamType: Note in condition Note that this may be an empty list
Added comment text: Note that this may be an empty list
StreamMonitor
Attributes moved to DynamicStreamData
idOfLastRecordReadFromLog
idOfLastRecordWrittenToLog
lastUpdated
Reference added (to where the attributes have been moved)
_dynamicStreamData
SupportedStreamType
recordRetention: Added comment text: … Applies to all record types in the stream unless overridden by another parameter (such as tombstone retention for a compacted log).
AnyClass: Usage clarified in comment.
NEW ATTRIBUTES
CompactedLogDetails
maxAllowedSegmentRollDelay
maxCompactionLag
ConnectionProtocolDetails
encodingFormat
SupportedStreamType
recordTrigger
NEW CLASSES
DynamicStreamData collecting attributes from StreamMonitor
idOfLastRecordWrittenToLog
idOfLastRecordReadFromLog
lastUpdated:
InformationRecordStrategy including new attributes
Changes in the pull request are detailed below (constructed from a diff between current develop branch and this pull request)
GENERAL CHANGES Corrected comments in, or added comments to, classes, attributes and data types.
<> stereotype removed from all entities.
General improvements to diagram structure/layout.
Corrections to CONDTIONAL_MANDATORY from MANDATORY along with addition of a condition for many attributes that are 0..x. Defaults added to many attributes to assist in construction of condition statements.
Correction of wordings of CONDITIONAL_MANDATORY statements normalized to “Mandatory where…”.
General correction from RW –-> R and correction to many stereotypes to WRITE_NOT_ALLOWED (which was broadly inconsistent with Read Only statement).
RPCs removed.
MANDATORY --> CONDITIONAL_MANDATORY (OR OPTIONAL) (CLASSES AND DATATYPES) The following lists attributes in classes/datatypes which are CONDITIONAL_MANDATORY and provides the condition statement “Mandatory where…”
AlarmConditionDetectorDetail (Deprecated)
AvailableStream
CompactedLogDetails
ConditionDetector
ConnectionProtocolDetails
DynamicStreamData (from StreamMonitor and then adjusted)
LogRecord
LogRecordBody
LogRecordHeader
SupportedStreamType
ApproxDateAndTime
LegacyProperties
OTHER CHANGES
AvailableStream
ConnectionProtocolDetails
LogRecordHeader
StreamAdminContext
StreamContext
StreamMonitor
SupportedStreamType
NEW ATTRIBUTES
CompactedLogDetails
ConnectionProtocolDetails
SupportedStreamType
NEW CLASSES
DynamicStreamData collecting attributes from StreamMonitor
InformationRecordStrategy including new attributes
NEW RELATIONSHIPS
StreamMonitorHasDynamicStreamData
AugmentWithInformationRecordDetails
FIXED RELATIONSHIPS
AlarmConditionDetectorDetailAugmentsConditionDetector
DELETED RELATIONSHIPS
InterfaceRealizationCompactedLogStream (and corresponding RPC)
InterfaceRealizationStream (and corresponding RPC)
ENUMERATIONS (AND LITERALS)
ConditionDetectorType has new literal PM_THRESHOLD_DETECTOR
ConnectionProtocol has been added
EncodingFormat has been added
RecordSuppression has been added
RecordTrigger has been added
ValueExpectation has been added
ValueExpectationDither has been added
LogRecordStrategy has been adjusted such that
RecordType has been extended to include CHANGE, UPDATE, CREATE and INFORMATION.