-note right of Version::resources
- - REQUEST_RESPONSE
- - SUBSCRIBE_NOTIFY
-end note
-ServiceAPIDescription::aefProfiles o-- AefProfile
-AefProfile::interfaceDescriptions o-- InterfaceDescription
-AefProfile::versions o-- Version
+struct CustomOperation #lightblue {
+ CommunicationType commType (required)
+ string custOpName (required)
+ string description
+ []Operation operations
+}
+enum Operation #lightblue {
+ GET
+ POST
+ PUT
+ PATCH
+ DELETE
+}
+enum SecurityMethod #lightblue {
+ PSK
+ PKI
+ OAUTH
+}
+struct Resource #lightblue {
+ string resourceName (required)
+ string uri (required)
+ CommunicationType commType (required)
+ string description
+}
+enum CommunicationType #lightblue {
+ REQUEST_RESPONSE
+ SUBSCRIBE_NOTIFY
+}
+ServiceAPIDescription::aefProfiles "1" o-- "1..N" AefProfile
+AefProfile::interfaceDescriptions "1" o-- "1..N" InterfaceDescription
+AefProfile::protocol "0..1" o-- "0..1" Protocol
+AefProfile::securityMethods "1" o-- "1..N" SecurityMethod
+AefProfile::dataFormat "0..1" o-- "0..N" DataFormat
+InterfaceDescription::securityMethods "1" o-- "1..N" SecurityMethod
+AefProfile::versions "1" o-- "1..N" Version
+Version::resources "1..N" o-- "1..N" Resource
+Version::custOperations "0..1" o-- "0..N" CustomOperation
+CustomOperation::CommunicationType "1" o-- "1" CommunicationType
+CustomOperation::operations "0..N" o-- "0..N" Operation
+Resource::commType "1" o-- "1" CommunicationType