Add initial specs in expected layout and added license
Showing
8 changed files
with
1132 additions
and
357 deletions
TensorCommon.xid
0 → 120000
| 1 | TensorCommon/V1.0.0/TensorCommon.xid | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="UTF-8" ?> | 1 | <?xml version="1.0" encoding="UTF-8" ?> |
| 2 | 2 | ||
| 3 | <!-- | ||
| 4 | Copyright (c) 2017, TeleCommunication Systems, Inc., | ||
| 5 | a wholly-owned subsidiary of Comtech Telecommunications Corp. | ||
| 6 | and/or affiliates of TeleCommunication Systems, Inc. | ||
| 7 | All rights reserved. | ||
| 8 | TeleCommunication Systems, Inc. PROPRIETARY/CONFIDENTIAL. | ||
| 9 | Use is subject to license terms included in the distribution. | ||
| 10 | --> | ||
| 11 | |||
| 3 | <specification xmlns="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | 12 | <specification xmlns="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" |
| 4 | xmlns:xid="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | 13 | xmlns:xid="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" |
| 5 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | 14 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| 6 | xsi:schemaLocation="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd XtensibleInterfaceDefinition.xsd" | 15 | xsi:schemaLocation="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd XtensibleInterfaceDefinition.xsd" |
| 7 | identity="TensorCommmon.xid"> | 16 | identity="TensorCommmon.xid"> |
| 8 | <title>Tensor Commmon Defitions</title> | 17 | <title>Tensor Commmon Definitions</title> |
| 9 | <comment></comment> | 18 | <comment></comment> |
| 10 | <artifact></artifact> | 19 | <artifact></artifact> |
| 11 | 20 | ||
| 12 | <import ref="http://xid.location.studio/XID/TensorDefinitions.xid" local="TensorDefinitions.xid" /> | 21 | <import ref="TensorDefinitions/V1.0.0/TensorDefinitions.xid" local="TensorDefinitions.xid" /> |
| 13 | 22 | ||
| 14 | <namespace name="Tensor"> | 23 | <namespace name="Tensor"> |
| 15 | <struct name="NameValue" > | 24 | <struct name="NameValue" > | ... | ... |
TensorDefinitions.xid
0 → 120000
| 1 | TensorDefinitions/V1.0.0/TensorDefinitions.xid | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="UTF-8" ?> | ||
| 2 | |||
| 3 | <!-- | ||
| 4 | Copyright (c) 2017, TeleCommunication Systems, Inc., | ||
| 5 | a wholly-owned subsidiary of Comtech Telecommunications Corp. | ||
| 6 | and/or affiliates of TeleCommunication Systems, Inc. | ||
| 7 | All rights reserved. | ||
| 8 | TeleCommunication Systems, Inc. PROPRIETARY/CONFIDENTIAL. | ||
| 9 | Use is subject to license terms included in the distribution. | ||
| 10 | --> | ||
| 11 | |||
| 12 | <specification xmlns="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | ||
| 13 | xmlns:xid="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | ||
| 14 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
| 15 | xsi:schemaLocation="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd XtensibleInterfaceDefinition.xsd" | ||
| 16 | identity="TensorDefinitions.xid"> | ||
| 17 | <title>Tensor Common Defitions</title> | ||
| 18 | <comment> | ||
| 19 | Defines fundamental types mappings. | ||
| 20 | </comment> | ||
| 21 | <artifact></artifact> | ||
| 22 | <tag name="package" value="com.comtechtel"/> | ||
| 23 | |||
| 24 | <namespace name="Tensor"> | ||
| 25 | <type name="void" size="0"> | ||
| 26 | <comment>represents nothing. <br/>Useful in <operation> with no <input></comment> | ||
| 27 | <lang name="c" type="void"/> | ||
| 28 | <lang name="cpp" type="void"/> | ||
| 29 | <lang name="java" type="void"/> | ||
| 30 | <lang name="node" type="void"/> | ||
| 31 | </type> | ||
| 32 | <type name="bool" size="1"> | ||
| 33 | <comment>represents true/false</comment> | ||
| 34 | <lang name="c" type="bool" include="stdbool.h"/> | ||
| 35 | <lang name="cpp" type="bool"/> | ||
| 36 | <lang name="java" type="XidBool" include="com.comtechtel.tensor.xid.XidBool"/> | ||
| 37 | <lang name="node" type="XidBool"/> | ||
| 38 | </type> | ||
| 39 | |||
| 40 | <type name="uint8" size="1"> | ||
| 41 | <comment>8-bit, unsigned value</comment> | ||
| 42 | <lang name="c" type="uint8_t" include="stdint.h"/> | ||
| 43 | <lang name="cpp" type="uint8_t" include="cstdint"/> | ||
| 44 | <lang name="java" type="XidByte" include="com.comtechtel.tensor.xid.XidByte" /> | ||
| 45 | <lang name="node" type="XidUInt8"/> | ||
| 46 | </type> | ||
| 47 | <type name="uint16" size="2"> | ||
| 48 | <comment>16-bit, unsigned value</comment> | ||
| 49 | <lang name="c" type="uint16_t" include="stdint.h"/> | ||
| 50 | <lang name="cpp" type="uint16_t" include="cstdint"/> | ||
| 51 | <lang name="java" type="XidShort" include="com.comtechtel.tensor.xid.XidShort"/> | ||
| 52 | <lang name="node" type="XidUShort"/> | ||
| 53 | </type> | ||
| 54 | <type name="uint24" size="3"> | ||
| 55 | <comment>24-bit, unsigned value</comment> | ||
| 56 | <lang name="c" type="uint24_t" include="Tensor/CXMF/int24.h"/> | ||
| 57 | <lang name="cpp" type="uint24_t" include="Tensor/Types/int24.h"/> | ||
| 58 | <lang name="java" type="XidInt24" include="com.comtechtel.tensor.xid.XidInt24"/> | ||
| 59 | <lang name="node" type="XidUInt24"/> | ||
| 60 | </type> | ||
| 61 | <type name="uint32" size="4"> | ||
| 62 | <comment>32-bit, unsigned value</comment> | ||
| 63 | <lang name="c" type="uint32_t" include="stdint.h"/> | ||
| 64 | <lang name="cpp" type="uint32_t" include="cstdint"/> | ||
| 65 | <lang name="java" type="XidInt" include="com.comtechtel.tensor.xid.XidInt"/> | ||
| 66 | <lang name="node" type="XidUInt"/> | ||
| 67 | </type> | ||
| 68 | <type name="uint64" size="8"> | ||
| 69 | <comment>64-bit, unsigned value</comment> | ||
| 70 | <lang name="c" type="uint64_t" include="stdint.h"/> | ||
| 71 | <lang name="cpp" type="uint64_t" include="cstdint"/> | ||
| 72 | <lang name="java" type="XidLong" include="com.comtechtel.tensor.xid.XidLong"/> | ||
| 73 | <lang name="node" type="XidULong"/> | ||
| 74 | </type> | ||
| 75 | |||
| 76 | <type name="int8" size="1"> | ||
| 77 | <comment>8-bit, signed value</comment> | ||
| 78 | <lang name="c" type="int8_t" include="stdint.h"/> | ||
| 79 | <lang name="cpp" type="int8_t" include="cstdint"/> | ||
| 80 | <lang name="java" type="XidByte" include="com.comtechtel.tensor.xid.XidByte"/> | ||
| 81 | <lang name="node" type="XidInt8"/> | ||
| 82 | </type> | ||
| 83 | <type name="int16" size="2"> | ||
| 84 | <comment>16-bit, signed value</comment> | ||
| 85 | <lang name="c" type="int16_t" include="stdint.h"/> | ||
| 86 | <lang name="cpp" type="int16_t" include="cstdint"/> | ||
| 87 | <lang name="java" type="XidShort" include="com.comtechtel.tensor.xid.XidShort" /> | ||
| 88 | <lang name="node" type="XidShort"/> | ||
| 89 | </type> | ||
| 90 | <type name="int24" size="3"> | ||
| 91 | <comment>24-bit, unsigned value</comment> | ||
| 92 | <lang name="c" type="int24_t" include="Tensor/CXMF/int24.h"/> | ||
| 93 | <lang name="cpp" type="int24_t" include="Tensor/Types/int24.h"/> | ||
| 94 | <lang name="java" type="XidInt24" include="com.comtechtel.tensor.xid.XidInt24"/> | ||
| 95 | <lang name="node" type="XidInt24"/> | ||
| 96 | </type> | ||
| 97 | <type name="int32" size="4"> | ||
| 98 | <comment>32-bit, signed value</comment> | ||
| 99 | <lang name="c" type="int32_t" include="stdint.h"/> | ||
| 100 | <lang name="cpp" type="int32_t" include="cstdint"/> | ||
| 101 | <lang name="java" type="XidInt" include="com.comtechtel.tensor.xid.XidInt"/> | ||
| 102 | <lang name="node" type="XidInt"/> | ||
| 103 | </type> | ||
| 104 | <type name="int64" size="8"> | ||
| 105 | <comment>64-bit, signed value</comment> | ||
| 106 | <lang name="c" type="int64_t" include="stdint.h"/> | ||
| 107 | <lang name="cpp" type="int64_t" include="cstdint"/> | ||
| 108 | <lang name="java" type="XidLong" include="com.comtechtel.tensor.xid.XidLong"/> | ||
| 109 | <lang name="node" type="XidLong"/> | ||
| 110 | </type> | ||
| 111 | |||
| 112 | <!-- | ||
| 113 | <type name="float16" size="4"> | ||
| 114 | <comment>32-bit, IEEE 754 binary16</comment> | ||
| 115 | <comment>C/cpp usually a "float"</comment> | ||
| 116 | <artifact>https://en.wikipedia.org/wiki/Half-precision_floating-point_format</artifact> | ||
| 117 | </type> | ||
| 118 | --> | ||
| 119 | |||
| 120 | <type name="float32" size="4"> | ||
| 121 | <comment>32-bit, IEEE 754 binary32</comment> | ||
| 122 | <artifact>https://en.wikipedia.org/wiki/Single-precision_floating-point_format</artifact> | ||
| 123 | <lang name="c" type="float"/> | ||
| 124 | <lang name="cpp" type="float"/> | ||
| 125 | <lang name="java" type="XidFloat" include="com.comtechtel.tensor.xid.XidFloat"/> | ||
| 126 | <lang name="node" type="XidFloat"/> | ||
| 127 | </type> | ||
| 128 | <type name="float64" size="8"> | ||
| 129 | <comment>64-bit, IEEE 754 binary64</comment> | ||
| 130 | <artifact>https://en.wikipedia.org/wiki/Double-precision_floating-point_format</artifact> | ||
| 131 | <lang name="c" type="double"/> | ||
| 132 | <lang name="cpp" type="double"/> | ||
| 133 | <lang name="java" type="XidDouble" include="com.comtechtel.tensor.xid.XidDouble"/> | ||
| 134 | <lang name="node" type="XidDouble"/> | ||
| 135 | </type> | ||
| 136 | <!-- | ||
| 137 | <type name="float128" size="8"> | ||
| 138 | <comment>128-bit, IEEE 754 binary128</comment> | ||
| 139 | <artifact>https://en.wikipedia.org/wiki/Quadruple-precision_floating-point_format</artifact> | ||
| 140 | <lang name="cpp" type="long double"/> | ||
| 141 | </type> | ||
| 142 | --> | ||
| 143 | |||
| 144 | <type name="byte" size="1"> | ||
| 145 | <comment>A single byte</comment> | ||
| 146 | <lang name="c" type="uint8_t" include="stdint.h"/> | ||
| 147 | <lang name="cpp" type="uint8_t" include="cstdint"/> | ||
| 148 | <lang name="java" type="XidByte" include="com.comtechtel.tensor.xid.XidByte"/> | ||
| 149 | <lang name="node" type="XidUInt8"/> | ||
| 150 | </type> | ||
| 151 | <type name="raw"> | ||
| 152 | <comment>Variable sized collection of bytes</comment> | ||
| 153 | <!-- may change this type --> | ||
| 154 | <lang name="c" type="CAtom" include="Tensor/CXMF/CXMF.h"/> | ||
| 155 | <lang name="cpp" type="::Tensor::XMF::Atom" include="Tensor/XMF/Atom.h"/> | ||
| 156 | <lang name="java" type="Atom" include="com.comtechtel.tensor.xmf.Atom"/> | ||
| 157 | <lang name="node" type="Atom"/> | ||
| 158 | </type> | ||
| 159 | |||
| 160 | <type name="string"> | ||
| 161 | <comment>Variable sized collection of characters</comment> | ||
| 162 | <lang name="c" type="CXMFString" include="Tensor/CXMF/CXMFString.h"/> | ||
| 163 | <lang name="cpp" type="std::string" include="string"/> | ||
| 164 | <lang name="java" type="XidString" include="com.comtechtel.tensor.xid.XidString"/> | ||
| 165 | <lang name="node" type="XidString"/> | ||
| 166 | </type> | ||
| 167 | |||
| 168 | <type name="datetime" size="8"> | ||
| 169 | <comment>nanoseconds since Jan 1, 1970.</comment> | ||
| 170 | <lang name="c" type="uint64_t" include="stdint.h"/> | ||
| 171 | <lang name="cpp" type="::Tensor::Types::DateTime" include="Tensor/Types/DateTime.h"/> | ||
| 172 | <lang name="java" type="XidDateTime" include="com.comtechtel.tensor.xid.XidDateTime"/> | ||
| 173 | <lang name="node" type="XidDateTime"/> | ||
| 174 | </type> | ||
| 175 | |||
| 176 | <type name="UUID" size="16"> | ||
| 177 | <comment>16 byte UUID</comment> | ||
| 178 | <lang name="c" type="UUID" include="Tensor/CXMF/uuid.h"/> | ||
| 179 | <lang name="cpp" type="::Tensor::Types::UUID" include="Tensor/Types/uuid.h"/> | ||
| 180 | <lang name="java" type="XidUuid" include="com.comtechtel.tensor.xid.XidUuid"/> | ||
| 181 | <lang name="node" type="XidUuid"/> | ||
| 182 | </type> | ||
| 183 | |||
| 184 | <type name="uri"> | ||
| 185 | <comment>Standard Universal Resource Identifier (URI)</comment> | ||
| 186 | <tag name="TODO" value="Define uri as a custom type. Use string for now."/> | ||
| 187 | <lang name="c" type="CXMFString" include="Tensor/CXMF/CXMFString.h"/> | ||
| 188 | <lang name="cpp" type="std::string" include="string"/> | ||
| 189 | <lang name="java" type="XidString" include="com.comtechtel.tensor.xid.XidString"/> | ||
| 190 | <lang name="node" type="XidString"/> | ||
| 191 | </type> | ||
| 192 | |||
| 193 | <type name="json"> | ||
| 194 | <comment>JSON formatted/encoded string</comment> | ||
| 195 | <tag name="TODO" value="Define json as a custom type. Use string for now."/> | ||
| 196 | <lang name="c" type="CXMFString" include="Tensor/CXMF/CXMFString.h"/> | ||
| 197 | <lang name="cpp" type="std::string" include="string"/> | ||
| 198 | <lang name="java" type="XidString" include="com.comtechtel.tensor.xid.XidString"/> | ||
| 199 | <lang name="node" type="XidString"/> | ||
| 200 | </type> | ||
| 201 | |||
| 202 | <!-- | ||
| 203 | ******************************************************* | ||
| 204 | Encoding Data Types | ||
| 205 | ******************************************************* | ||
| 206 | --> | ||
| 207 | |||
| 208 | <!-- Encoding format type spec.--> | ||
| 209 | <type name="EncodingFormat" size="2"> | ||
| 210 | <comment> | ||
| 211 | The encoding format determines how element data is run-time encoded within a particular element independent of the | ||
| 212 | transport encoding. | ||
| 213 | These values are specified in the "encoding" attribute for elements. Not all encoding formats | ||
| 214 | are supported by every wireline protocol implementation. Additionally, custom encodings may be | ||
| 215 | defined to support application defined encodings. Any non-standard encodings must be registered (to avoid collision) | ||
| 216 | and approved by the appropriate approving authority (e.g. Comtech). Values from 0 to 255 are reserved | ||
| 217 | for standard-encodings. Custom encodings start at 256(0x0100) and extend to 65535 (0xFFFF).\n | ||
| 218 | \n | ||
| 219 | This is not the same as defining in XID a raw datatype or json datatype which are NOT changeable are run-time. | ||
| 220 | \n | ||
| 221 | Example: \n | ||
| 222 | \t The message XMF but a field is defined to be encoded as JSON.\n | ||
| 223 | \t Likewise, the message is JSON, but a field is run-time encoded to be XMF.\n | ||
| 224 | \n | ||
| 225 | Data encoding format type. If 0, value is not encoded. See ResrvedEncodingFormats | ||
| 226 | for a list of standard format specifiers. | ||
| 227 | </comment> | ||
| 228 | <lang name="c" type="uint16_t" include="stdint.h" /> | ||
| 229 | <lang name="cpp" type="uint16_t" include="cstdint" /> | ||
| 230 | <lang name="java" type="XidShort" include="com.comtechtel.tensor.xid.XidShort" /> | ||
| 231 | <lang name="node" type="XidUShort" /> | ||
| 232 | </type> | ||
| 233 | |||
| 234 | <!-- ReservedEncodingFormats standard encoding formats.--> | ||
| 235 | <enum name="ReservedEncodingFormats" type="Tensor.uint16" default="native"> | ||
| 236 | <comment> | ||
| 237 | Reserved encoding formats define standard encodings known to all implementations. | ||
| 238 | </comment> | ||
| 239 | <literal name="native" value="0"> | ||
| 240 | <comment> | ||
| 241 | Data is not encoded, information is in the default format for the particular wireline interface.\n | ||
| 242 | This is the default value if not defined explicitly. | ||
| 243 | </comment> | ||
| 244 | </literal> | ||
| 245 | <literal name="raw" value="1"> | ||
| 246 | <comment> | ||
| 247 | Data is in an unspecified binary format. The interpretation of the data is | ||
| 248 | falls to the producer and consumer of the information. | ||
| 249 | For textual wireline encodings like JSON, the data will be valid within the representation. | ||
| 250 | </comment> | ||
| 251 | </literal> | ||
| 252 | <literal name="xmf" value="2"> | ||
| 253 | <comment> | ||
| 254 | Data is XMF binary format. The binary data is structured using atoms and atom lists. | ||
| 255 | For textual wireline encodings like JSON, this is XMF base64 encoded. | ||
| 256 | </comment> | ||
| 257 | </literal> | ||
| 258 | <literal name="json" value="3"> | ||
| 259 | <comment> | ||
| 260 | Data is formatted as JSON compliant ascii text. | ||
| 261 | </comment> | ||
| 262 | </literal> | ||
| 263 | </enum> | ||
| 264 | </namespace> | ||
| 265 | </specification> |
TensorLogging.xid
0 → 120000
| 1 | TensorLogging/V1.0.0/TensorLogging.xid | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="UTF-8" ?> | 1 | <?xml version="1.0" encoding="UTF-8" ?> |
| 2 | 2 | ||
| 3 | <specification xmlns="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | 3 | <!-- |
| 4 | xmlns:xid="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | 4 | Copyright (c) 2017, TeleCommunication Systems, Inc., |
| 5 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | 5 | a wholly-owned subsidiary of Comtech Telecommunications Corp. |
| 6 | xsi:schemaLocation="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd XtensibleInterfaceDefinition.xsd" | 6 | and/or affiliates of TeleCommunication Systems, Inc. |
| 7 | identity="Logging.xid"> | 7 | All rights reserved. |
| 8 | <title>Tensor Logging Messages</title> | 8 | TeleCommunication Systems, Inc. PROPRIETARY/CONFIDENTIAL. |
| 9 | <comment> | 9 | Use is subject to license terms included in the distribution. |
| 10 | This file contains the base type definitions for logging messages and data. All ENT micro-service compliant systems shall support these datatypes | 10 | --> |
| 11 | for capturing various types of logging information including actionable messages, trace, and usage data. Logging messages are polymorphic and extensible | 11 | |
| 12 | as needed to support various types of information. | 12 | <specification xmlns="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" |
| 13 | </comment> | 13 | xmlns:xid="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" |
| 14 | 14 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| 15 | <import ref="http://xid.location.studio/XID/TensorDefinitions.xid" local="TensorDefinitions.xid" /> | 15 | xsi:schemaLocation="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd XtensibleInterfaceDefinition.xsd" |
| 16 | 16 | identity="Logging.xid"> | |
| 17 | <namespace name="Logging"> | 17 | <title>Tensor Logging Messages</title> |
| 18 | <using namespace="Tensor"/> | 18 | <comment> |
| 19 | 19 | This file contains the base type definitions for logging messages and data. All ENT micro-service compliant systems shall support these datatypes | |
| 20 | <!-- | 20 | for capturing various types of logging information including actionable messages, trace, and usage data. Logging messages are polymorphic and extensible |
| 21 | ******************************************************* | 21 | as needed to support various types of information. |
| 22 | Enumeration Definitions | 22 | </comment> |
| 23 | ******************************************************* | 23 | |
| 24 | --> | 24 | <import ref="TensorDefinitions/V1.0.0/TensorDefinitions.xid" local="TensorDefinitions.xid" /> |
| 25 | <enum name="MessageType" type="Tensor.uint8" default="undefined"> | 25 | |
| 26 | <comment> | 26 | <namespace name="Logging"> |
| 27 | Message types define the base type identifiers for logging messages. These are used to | 27 | <using namespace="Tensor"/> |
| 28 | identify the type of logging data. The Message type is not a closed set and can be extended as needed. | 28 | |
| 29 | The types defined here are common to every system. Type values below 64 are reserved for the core logging extensions | 29 | <!-- |
| 30 | Any non-core message types should define type identifiers greater than 64. | 30 | ******************************************************* |
| 31 | </comment> | 31 | Enumeration Definitions |
| 32 | <literal name="undefined" value="0"> | 32 | ******************************************************* |
| 33 | <comment>Message type is not defined. This is a reserved value and should not be used in most situations.</comment> | 33 | --> |
| 34 | </literal> | 34 | <enum name="MessageType" type="Tensor.uint8" default="undefined"> |
| 35 | <literal name="ActionMsg" value="1"> | 35 | <comment> |
| 36 | <comment>Defines a message that requires some responsive action. See Tensor.Logging.ActionMsg structure for more information.</comment> | 36 | Message types define the base type identifiers for logging messages. These are used to |
| 37 | </literal> | 37 | identify the type of logging data. The Message type is not a closed set and can be extended as needed. |
| 38 | <literal name="TraceMsg" value="2"> | 38 | The types defined here are common to every system. Type values below 64 are reserved for the core logging extensions |
| 39 | <comment>Defines a message capturing software trace data typically used for debugging. See Tensor.Logging.TraceMsg structure for more information.</comment> | 39 | Any non-core message types should define type identifiers greater than 64. |
| 40 | </literal> | 40 | </comment> |
| 41 | <literal name="UsageMsg" value="3"> | 41 | <literal name="undefined" value="0"> |
| 42 | <comment>Defines a message for capturing usage data. See Tensor.Logging.UsageMsg for more information.</comment> | 42 | <comment>Message type is not defined. This is a reserved value and should not be used in most situations.</comment> |
| 43 | </literal> | 43 | </literal> |
| 44 | <literal name="MetricMsg" value="4"> | 44 | <literal name="ActionMsg" value="1"> |
| 45 | <comment>Defines a message for capturing metric data. See Tensor.Logging.MetricMsg for more information.</comment> | 45 | <comment>Defines a message that requires some responsive action. See Tensor.Logging.ActionMsg structure for more information.</comment> |
| 46 | </literal> | 46 | </literal> |
| 47 | </enum> | 47 | <literal name="TraceMsg" value="2"> |
| 48 | 48 | <comment>Defines a message capturing software trace data typically used for debugging. See Tensor.Logging.TraceMsg structure for more information.</comment> | |
| 49 | <enum name="Severity" type="int8" default="indeterminate"> | 49 | </literal> |
| 50 | <comment> | 50 | <literal name="UsageMsg" value="3"> |
| 51 | Severity is defined as part of an Tensor.Logging.ActionMsg describing the severity of the issue. This is an extensible list that can be added to as | 51 | <comment>Defines a message for capturing usage data. See Tensor.Logging.UsageMsg for more information.</comment> |
| 52 | new severities are determine. In general, try to use the core defined severities or add new core ones as needed. Custom severity should be avoided. If defined, | 52 | </literal> |
| 53 | however, start with values > 64. Values less than 64 are reserved. | 53 | <literal name="MetricMsg" value="4"> |
| 54 | </comment> | 54 | <comment>Defines a message for capturing metric data. See Tensor.Logging.MetricMsg for more information.</comment> |
| 55 | <literal name="indeterminate" value="0"> | 55 | </literal> |
| 56 | <comment>Severity of the issue is indeterminate.</comment> | 56 | </enum> |
| 57 | </literal> | 57 | |
| 58 | <literal name="warning" value="1"> | 58 | <enum name="Severity" type="int8" default="indeterminate"> |
| 59 | <comment> | 59 | <comment> |
| 60 | Severity indicates message is a warning regarding the specified issue. Warnings describe a potental issue that | 60 | Severity is defined as part of an Tensor.Logging.ActionMsg describing the severity of the issue. This is an extensible list that can be added to as |
| 61 | may require additional monitoring over time. However, it is not deemed as having a significant | 61 | new severities are determine. In general, try to use the core defined severities or add new core ones as needed. Custom severity should be avoided. If defined, |
| 62 | impaction on system operation. | 62 | however, start with values > 64. Values less than 64 are reserved. |
| 63 | </comment> | 63 | </comment> |
| 64 | </literal> | 64 | <literal name="indeterminate" value="0"> |
| 65 | <literal name="minor" value="2"> | 65 | <comment>Severity of the issue is indeterminate.</comment> |
| 66 | <comment> | 66 | </literal> |
| 67 | Message is describing a minor issue, which requires some action. A | 67 | <literal name="warning" value="1"> |
| 68 | minor issue is something that does not have a wide scale impact on system operation. | 68 | <comment> |
| 69 | For example a minor issue might be something that would affect a single transaction. | 69 | Severity indicates message is a warning regarding the specified issue. Warnings describe a potental issue that |
| 70 | </comment> | 70 | may require additional monitoring over time. However, it is not deemed as having a significant |
| 71 | </literal> | 71 | impaction on system operation. |
| 72 | <literal name="major" value="3"> | 72 | </comment> |
| 73 | <comment> | 73 | </literal> |
| 74 | Message is describing a major issue, which requires action. A | 74 | <literal name="minor" value="2"> |
| 75 | major issue is something that affects the system in a signficant way | 75 | <comment> |
| 76 | such as having impact on multiple transactions. | 76 | Message is describing a minor issue, which requires some action. A |
| 77 | </comment> | 77 | minor issue is something that does not have a wide scale impact on system operation. |
| 78 | </literal> | 78 | For example a minor issue might be something that would affect a single transaction. |
| 79 | <literal name="critical" value="4"> | 79 | </comment> |
| 80 | <comment> | 80 | </literal> |
| 81 | Message is describing a critical issue, which requires immediate action. Critical issues | 81 | <literal name="major" value="3"> |
| 82 | are typically catastrophic system issues affecting all transactions in a very significant way. | 82 | <comment> |
| 83 | </comment> | 83 | Message is describing a major issue, which requires action. A |
| 84 | </literal> | 84 | major issue is something that affects the system in a signficant way |
| 85 | <literal name="cleared" value="5"> | 85 | such as having impact on multiple transactions. |
| 86 | <comment>Message is describing an issue has been resolved or no longer requires actions.</comment> | 86 | </comment> |
| 87 | </literal> | 87 | </literal> |
| 88 | </enum> | 88 | <literal name="critical" value="4"> |
| 89 | 89 | <comment> | |
| 90 | <enum name="Category" type="int8" default="processingError"> | 90 | Message is describing a critical issue, which requires immediate action. Critical issues |
| 91 | <comment> | 91 | are typically catastrophic system issues affecting all transactions in a very significant way. |
| 92 | The category decribes the general category for an ActionMsg. This is an extensible list that can be added to as | 92 | </comment> |
| 93 | new categories are needed. In general, try to use the core defined categories or add new ones as needed. Custom categories should start with | 93 | </literal> |
| 94 | values > 64. Values less than 64 are reserved. | 94 | <literal name="cleared" value="5"> |
| 95 | </comment> | 95 | <comment>Message is describing an issue has been resolved or no longer requires actions.</comment> |
| 96 | <literal name ="undefined" value ="0"> | 96 | </literal> |
| 97 | <comment>Action category is undefined or not known.</comment> | 97 | </enum> |
| 98 | </literal> | 98 | |
| 99 | <literal name="communications" value="1"> | 99 | <enum name="Category" type="int8" default="processingError"> |
| 100 | <comment>A communications and/or networking related issue.</comment> | 100 | <comment> |
| 101 | </literal> | 101 | The category decribes the general category for an ActionMsg. This is an extensible list that can be added to as |
| 102 | <literal name="qualityOfService" value="2"> | 102 | new categories are needed. In general, try to use the core defined categories or add new ones as needed. Custom categories should start with |
| 103 | <comment>A quality of service related issue.</comment> | 103 | values > 64. Values less than 64 are reserved. |
| 104 | </literal> | 104 | </comment> |
| 105 | <literal name="processingError" value="3"> | 105 | <literal name ="undefined" value ="0"> |
| 106 | <comment>A processing or runtime related issue.</comment> | 106 | <comment>Action category is undefined or not known.</comment> |
| 107 | </literal> | 107 | </literal> |
| 108 | <literal name="equipment" value="4"> | 108 | <literal name="communications" value="1"> |
| 109 | <comment>An equipment related issue.</comment> | 109 | <comment>A communications and/or networking related issue.</comment> |
| 110 | </literal> | 110 | </literal> |
| 111 | <literal name="environmental" value="5"> | 111 | <literal name="qualityOfService" value="2"> |
| 112 | <comment>A environment related issue.</comment> | 112 | <comment>A quality of service related issue.</comment> |
| 113 | </literal> | 113 | </literal> |
| 114 | </enum> | 114 | <literal name="processingError" value="3"> |
| 115 | 115 | <comment>A processing or runtime related issue.</comment> | |
| 116 | <enum name="TraceLevel" type="Tensor.int8" default="undefined"> | 116 | </literal> |
| 117 | <comment>Trace level defines the level of tracing information reported. This allows for filtering of information based on rank.</comment> | 117 | <literal name="equipment" value="4"> |
| 118 | <literal name="undefined" value="0"> | 118 | <comment>An equipment related issue.</comment> |
| 119 | <comment>Trace level is not defined.</comment> | 119 | </literal> |
| 120 | </literal> | 120 | <literal name="environmental" value="5"> |
| 121 | <literal name="overview" value="1"> | 121 | <comment>A environment related issue.</comment> |
| 122 | <comment>Information contained in the trace message is high-level or summary.</comment> | 122 | </literal> |
| 123 | </literal> | 123 | </enum> |
| 124 | <literal name="trace" value="2"> | 124 | |
| 125 | <comment>Information contained in the trace message is related to program flow and sequencing.</comment> | 125 | <enum name="TraceLevel" type="Tensor.int8" default="undefined"> |
| 126 | </literal> | 126 | <comment>Trace level defines the level of tracing information reported. This allows for filtering of information based on rank.</comment> |
| 127 | <literal name="detail" value="3"> | 127 | <literal name="undefined" value="0"> |
| 128 | <comment>Information contained in the trace message is detailed information.</comment> | 128 | <comment>Trace level is not defined.</comment> |
| 129 | </literal> | 129 | </literal> |
| 130 | <literal name="debug" value="4"> | 130 | <literal name="overview" value="1"> |
| 131 | <comment>Information contained in the trace message contains debugging information.</comment> | 131 | <comment>Information contained in the trace message is high-level or summary.</comment> |
| 132 | </literal> | 132 | </literal> |
| 133 | </enum> | 133 | <literal name="trace" value="2"> |
| 134 | 134 | <comment>Information contained in the trace message is related to program flow and sequencing.</comment> | |
| 135 | <struct name="DebugInfo"> | 135 | </literal> |
| 136 | <comment> | 136 | <literal name="detail" value="3"> |
| 137 | Structure captures the file and line number information for Trace Messages. This provides information about where the trace message was sent. | 137 | <comment>Information contained in the trace message is detailed information.</comment> |
| 138 | </comment> | 138 | </literal> |
| 139 | <elem name="file" type="Tensor.string" multiplicity="1"> | 139 | <literal name="debug" value="4"> |
| 140 | <comment>File name where this message was logged.</comment> | 140 | <comment>Information contained in the trace message contains debugging information.</comment> |
| 141 | </elem> | 141 | </literal> |
| 142 | <elem name="line" type="Tensor.uint32" multiplicity="1"> | 142 | </enum> |
| 143 | <comment>Line number in file where this message is logged.</comment> | 143 | |
| 144 | </elem> | 144 | <struct name="DebugInfo"> |
| 145 | <elem name="thid" type="Tensor.uint64" multiplicity="1" default="0"> | 145 | <comment> |
| 146 | <comment>Optional Thread ID, if not specified, default value is 0.</comment> | 146 | Structure captures the file and line number information for Trace Messages. This provides information about where the trace message was sent. |
| 147 | </elem> | 147 | </comment> |
| 148 | 148 | <elem name="file" type="Tensor.string" multiplicity="1" ord="64"> | |
| 149 | </struct> | 149 | <comment>File name where this message was logged.</comment> |
| 150 | 150 | </elem> | |
| 151 | <!-- | 151 | <elem name="line" type="Tensor.uint32" multiplicity="1" ord="65"> |
| 152 | ******************************************************* | 152 | <comment>Line number in file where this message is logged.</comment> |
| 153 | Metric Structure Definitions | 153 | </elem> |
| 154 | ******************************************************* | 154 | <elem name="thid" type="Tensor.uint64" multiplicity="1" default="0" ord="66"> |
| 155 | --> | 155 | <comment>Optional Thread ID, if not specified, default value is 0.</comment> |
| 156 | 156 | </elem> | |
| 157 | <enum name="MetricType" type="Tensor.uint8" default="undefined"> | 157 | |
| 158 | <literal name="undefined" value="0"> | 158 | </struct> |
| 159 | <comment>Metric type is not defined. This is a reserved value and should not be used in most situations.</comment> | 159 | |
| 160 | </literal> | 160 | <!-- |
| 161 | <literal name="PegCount" value="1"> | 161 | ******************************************************* |
| 162 | <comment>Defines a simple monotonically incremented counter.</comment> | 162 | Metric Structure Definitions |
| 163 | </literal> | 163 | ******************************************************* |
| 164 | <literal name="AppMetrics" value="2"> | 164 | --> |
| 165 | <comment>Defines a complex metric measuring duration and concurrency.</comment> | 165 | |
| 166 | </literal> | 166 | <enum name="MetricType" type="Tensor.uint8" default="undefined"> |
| 167 | </enum> | 167 | <literal name="undefined" value="0"> |
| 168 | 168 | <comment>Metric type is not defined. This is a reserved value and should not be used in most situations.</comment> | |
| 169 | <struct name="Metric"> | 169 | </literal> |
| 170 | <elem name="metricType" type="MetricType" multiplicity="1" rttd="true"> | 170 | <literal name="PegCount" value="1"> |
| 171 | <comment>This specifies the type of the reported metric.</comment> | 171 | <comment>Defines a simple monotonically incremented counter.</comment> |
| 172 | </elem> | 172 | </literal> |
| 173 | <elem name="name" type="string" multiplicity="1"> | 173 | <literal name="AppMetrics" value="2"> |
| 174 | <comment>Name of the reported metric.</comment> | 174 | <comment>Defines a complex metric measuring duration and concurrency.</comment> |
| 175 | </elem> | 175 | </literal> |
| 176 | </struct> | 176 | </enum> |
| 177 | 177 | ||
| 178 | <struct name="PegCount" type="Metric" rttkey="Logging.MetricType.PegCount"> | 178 | <struct name="Metric"> |
| 179 | <elem name="value" type="uint32" multiplicity="1"> | 179 | <elem name="metricType" type="MetricType" multiplicity="1" rttd="true" ord="64"> |
| 180 | <comment>Value of peg count since last reporting.</comment> | 180 | <comment>This specifies the type of the reported metric.</comment> |
| 181 | </elem> | 181 | </elem> |
| 182 | </struct> | 182 | <elem name="name" type="string" multiplicity="1" ord="65"> |
| 183 | 183 | <comment>Name of the reported metric.</comment> | |
| 184 | <struct name="AppMetrics" type="Metric" rttkey="Logging.MetricType.AppMetrics"> | 184 | </elem> |
| 185 | <elem name="totalCount" type="uint32" multiplicity="1"> | 185 | </struct> |
| 186 | <comment>Total count of invocations since last reporting.</comment> | 186 | |
| 187 | </elem> | 187 | <struct name="PegCount" type="Metric" rttkey="Logging.MetricType.PegCount"> |
| 188 | <elem name="currentCount" type="uint32" multiplicity="1"> | 188 | <elem name="value" type="uint32" multiplicity="1" ord="80"> |
| 189 | <comment>concurrent invocations at time of reporting.</comment> | 189 | <comment>Value of peg count since last reporting.</comment> |
| 190 | </elem> | 190 | </elem> |
| 191 | <elem name="peakCount" type="uint32" multiplicity="1"> | 191 | </struct> |
| 192 | <comment>Peak concurrent invocations since last reporting.</comment> | 192 | |
| 193 | </elem> | 193 | <struct name="AppMetrics" type="Metric" rttkey="Logging.MetricType.AppMetrics"> |
| 194 | <elem name="totalTime" type="uint64" multiplicity="1"> | 194 | <elem name="totalCount" type="uint32" multiplicity="1" ord="80"> |
| 195 | <comment>Total time spent on invocations in nanoseconds since last reporting.</comment> | 195 | <comment>Total count of invocations since last reporting.</comment> |
| 196 | </elem> | 196 | </elem> |
| 197 | <elem name="peakTime" type="uint64" multiplicity="1"> | 197 | <elem name="currentCount" type="uint32" multiplicity="1" ord="81"> |
| 198 | <comment>Peak time for an invocation in nanoseconds since last reporting.</comment> | 198 | <comment>concurrent invocations at time of reporting.</comment> |
| 199 | </elem> | 199 | </elem> |
| 200 | <elem name="successCount" type="uint32" multiplicity="1"> | 200 | <elem name="peakCount" type="uint32" multiplicity="1" ord="82"> |
| 201 | <comment>Count of successful invocations since last reporting.</comment> | 201 | <comment>Peak concurrent invocations since last reporting.</comment> |
| 202 | </elem> | 202 | </elem> |
| 203 | <elem name="failureCount" type="uint32" multiplicity="1"> | 203 | <elem name="totalTime" type="uint64" multiplicity="1" ord="83"> |
| 204 | <comment>Count of failed invocations since last reporting.</comment> | 204 | <comment>Total time spent on invocations in nanoseconds since last reporting.</comment> |
| 205 | </elem> | 205 | </elem> |
| 206 | </struct> | 206 | <elem name="peakTime" type="uint64" multiplicity="1" ord="84"> |
| 207 | 207 | <comment>Peak time for an invocation in nanoseconds since last reporting.</comment> | |
| 208 | 208 | </elem> | |
| 209 | 209 | <elem name="successCount" type="uint32" multiplicity="1" ord="85"> | |
| 210 | <!-- | 210 | <comment>Count of successful invocations since last reporting.</comment> |
| 211 | ******************************************************* | 211 | </elem> |
| 212 | Message Structure Definitions | 212 | <elem name="failureCount" type="uint32" multiplicity="1" ord="86"> |
| 213 | ******************************************************* | 213 | <comment>Count of failed invocations since last reporting.</comment> |
| 214 | --> | 214 | </elem> |
| 215 | 215 | </struct> | |
| 216 | <struct name="MessageBase"> | 216 | |
| 217 | <comment> | 217 | |
| 218 | Base type for all messages. This contains only the polymorphic type data. The structure Message derives from this | 218 | |
| 219 | structure and provides common fields typically useful in logging related applications. Derive from this structure | 219 | <!-- |
| 220 | if messages are related to logging but do not require the standard fields. It is recommended that most specializations | 220 | ******************************************************* |
| 221 | should start with Message as the base type. | 221 | Message Structure Definitions |
| 222 | </comment> | 222 | ******************************************************* |
| 223 | <elem name="type" type="MessageType" multiplicity="1" rttd="true"> | 223 | --> |
| 224 | <comment> This specifies the type of message.</comment> | 224 | |
| 225 | </elem> | 225 | <struct name="MessageBase"> |
| 226 | <elem name="date" type="datetime" multiplicity="1"> | 226 | <comment> |
| 227 | <comment>The date/time the message occured.</comment> | 227 | Base type for all messages. This contains only the polymorphic type data. The structure Message derives from this |
| 228 | </elem> | 228 | structure and provides common fields typically useful in logging related applications. Derive from this structure |
| 229 | <elem name="source" type="Tensor.uri" multiplicity="1"> | 229 | if messages are related to logging but do not require the standard fields. It is recommended that most specializations |
| 230 | <comment>URI Identifying name of the component or process logging the message.</comment> | 230 | should start with Message as the base type. |
| 231 | </elem> | 231 | </comment> |
| 232 | <elem name="info" type="string" multiplicity="0..1"> | 232 | <elem name="type" type="MessageType" multiplicity="1" rttd="true" ord="64"> |
| 233 | <comment>Optional free form string data.</comment> | 233 | <comment> This specifies the type of message.</comment> |
| 234 | </elem> | 234 | </elem> |
| 235 | <elem name="data" type="Tensor.json" multiplicity="0..1"> | 235 | <elem name="date" type="datetime" multiplicity="1" ord="65"> |
| 236 | <comment>Optional structured data.</comment> | 236 | <comment>The date/time the message occured.</comment> |
| 237 | </elem> | 237 | </elem> |
| 238 | <elem name="debug" type="DebugInfo" multiplicity="0..1"> | 238 | <elem name="source" type="Tensor.uri" multiplicity="1" ord="66"> |
| 239 | <comment>Optional debug information for message.</comment> | 239 | <comment>URI Identifying name of the component or process logging the message.</comment> |
| 240 | </elem> | 240 | </elem> |
| 241 | </struct> | 241 | <elem name="info" type="string" multiplicity="0..1" ord="67"> |
| 242 | 242 | <comment>Optional free form string data.</comment> | |
| 243 | <!-- Message type --> | 243 | </elem> |
| 244 | <struct name="TransactionMsg" type="MessageBase"> | 244 | <elem name="data" type="Tensor.json" multiplicity="0..1" ord="68"> |
| 245 | <comment> | 245 | <comment>Optional structured data.</comment> |
| 246 | Basic logging message data common to all types of logging. This specializes MessageBase and is the standard logging message. Create custom message types as needed; however, consider | 246 | </elem> |
| 247 | specializing from the core defined sub-types of ActionMsg, Trace, or Usage depending upon need. In most cases, you should not use this message directly. | 247 | <elem name="debug" type="DebugInfo" multiplicity="0..1" ord="69"> |
| 248 | </comment> | 248 | <comment>Optional debug information for message.</comment> |
| 249 | <elem name="tid" type="Tensor.UUID" multiplicity="1"> | 249 | </elem> |
| 250 | <comment>Unique ID identifying the internal transaction related to the message.</comment> | 250 | </struct> |
| 251 | </elem> | 251 | |
| 252 | <elem name="etid" type="string" multiplicity="0..1"> | 252 | <!-- Message type --> |
| 253 | <comment>Optional externally defined transaction ID.</comment> | 253 | <struct name="TransactionMsg" type="MessageBase"> |
| 254 | </elem> | 254 | <comment> |
| 255 | <elem name="acctid" type="string" multiplicity="0..1"> | 255 | Basic logging message data common to all types of logging. This specializes MessageBase and is the standard logging message. Create custom message types as needed; however, consider |
| 256 | <comment>Optional externally defined account/group identifier.</comment> | 256 | specializing from the core defined sub-types of ActionMsg, Trace, or Usage depending upon need. In most cases, you should not use this message directly. |
| 257 | </elem> | 257 | </comment> |
| 258 | <elem name="devid" type="string" multiplicity="0..1"> | 258 | <elem name="tid" type="Tensor.UUID" multiplicity="1" ord="80"> |
| 259 | <comment>Optional externally defined device identifier.</comment> | 259 | <comment>Unique ID identifying the internal transaction related to the message.</comment> |
| 260 | </elem> | 260 | </elem> |
| 261 | <elem name="appid" type="string" multiplicity="0..1"> | 261 | <elem name="etid" type="string" multiplicity="0..1" ord="81"> |
| 262 | <comment>Optional externally defined application (or application key) identifier.</comment> | 262 | <comment>Optional externally defined transaction ID.</comment> |
| 263 | </elem> | 263 | </elem> |
| 264 | 264 | <elem name="acctid" type="string" multiplicity="0..1" ord="82"> | |
| 265 | </struct> | 265 | <comment>Optional externally defined account/group identifier.</comment> |
| 266 | 266 | </elem> | |
| 267 | <!-- ActionMsg type --> | 267 | <elem name="devid" type="string" multiplicity="0..1" ord="83"> |
| 268 | <struct name="ActionMsg" type="TransactionMsg" rttkey="Logging.MessageType.ActionMsg"> | 268 | <comment>Optional externally defined device identifier.</comment> |
| 269 | <comment> | 269 | </elem> |
| 270 | A message that requires another system/user to respond with some action. | 270 | <elem name="appid" type="string" multiplicity="0..1" ord="84"> |
| 271 | </comment> | 271 | <comment>Optional externally defined application (or application key) identifier.</comment> |
| 272 | <elem name="id" type="Tensor.uint32" multiplicity="1"> | 272 | </elem> |
| 273 | <comment>Error code identifying the fault type</comment> | 273 | |
| 274 | </elem> | 274 | </struct> |
| 275 | <elem name="severity" type="Severity" multiplicity="1"/> | 275 | |
| 276 | <elem name="category" type="Category" multiplicity="1"/> | 276 | <!-- ActionMsg type --> |
| 277 | <elem name="iid" type="Tensor.uri" multiplicity="0..1"> | 277 | <struct name="ActionMsg" type="TransactionMsg" rttkey="Logging.MessageType.ActionMsg"> |
| 278 | <comment>Optional incident identifier. Should uniquely define the action issue for future reference.</comment> | 278 | <comment> |
| 279 | </elem> | 279 | A message that requires another system/user to respond with some action. |
| 280 | 280 | </comment> | |
| 281 | </struct> | 281 | <elem name="id" type="Tensor.uri" multiplicity="1" ord="96"> |
| 282 | 282 | <comment>Error code identifying the fault type</comment> | |
| 283 | <!-- TraceMsg type --> | 283 | </elem> |
| 284 | <struct name="TraceMsg" type="TransactionMsg" rttkey="Logging.MessageType.TraceMsg"> | 284 | <elem name="severity" type="Severity" multiplicity="1" ord="97"/> |
| 285 | <comment> | 285 | <elem name="category" type="Category" multiplicity="1" ord="98"/> |
| 286 | Trace message for general logging and reporting of information | 286 | <elem name="iid" type="Tensor.uri" multiplicity="0..1" ord="99"> |
| 287 | </comment> | 287 | <comment>Optional incident identifier used to identify an action instance uniquely. This is needed when there are stateful clearing events.</comment> |
| 288 | <elem name="level" type="TraceLevel" multiplicity="1"> | 288 | </elem> |
| 289 | <comment>Indicates the level of the trace: overview is the highest level and debug is the lowest</comment> | 289 | </struct> |
| 290 | </elem> | 290 | |
| 291 | </struct> | 291 | <!-- TraceMsg type --> |
| 292 | 292 | <struct name="TraceMsg" type="TransactionMsg" rttkey="Logging.MessageType.TraceMsg"> | |
| 293 | <!-- UsageMsg type --> | 293 | <comment> |
| 294 | <struct name="UsageMsg" type="TransactionMsg" rttkey="Logging.MessageType.UsageMsg"> | 294 | Trace message for general logging and reporting of information |
| 295 | <comment> | 295 | </comment> |
| 296 | Message capturing usage information for reporting statistical, transactional, edge, location, or other useful information generated in the normal | 296 | <elem name="level" type="TraceLevel" multiplicity="1" ord="96"> |
| 297 | operation of the system. | 297 | <comment>Indicates the level of the trace: overview is the highest level and debug is the lowest</comment> |
| 298 | </comment> | 298 | </elem> |
| 299 | <elem name="uri" type="Tensor.uri" multiplicity="1" rttd="true"> | 299 | </struct> |
| 300 | <comment> Usage id specific to a type of usage information. Can be general or application specific.</comment> | 300 | |
| 301 | </elem> | 301 | <!-- UsageMsg type --> |
| 302 | </struct> | 302 | <struct name="UsageMsg" type="TransactionMsg" rttkey="Logging.MessageType.UsageMsg"> |
| 303 | 303 | <comment> | |
| 304 | <!-- MetricMsg type --> | 304 | Message capturing usage information for reporting statistical, transactional, edge, location, or other useful information generated in the normal |
| 305 | <struct name="MetricMsg" type="MessageBase" rttkey="Logging.MessageType.MetricMsg"> | 305 | operation of the system. |
| 306 | <elem name="start" type="datetime" multiplicity="1"> | 306 | </comment> |
| 307 | <comment>The date/time of the start of the report interval. date is end the end of the report interval.</comment> | 307 | <elem name="uri" type="Tensor.uri" multiplicity="1" rttd="true" ord="96"> |
| 308 | </elem> | 308 | <comment> Usage id specific to a type of usage information. Can be general or application specific.</comment> |
| 309 | <elem name="duration" type="uint16" multiplicity="1"> | 309 | </elem> |
| 310 | <tag name="unit" value="sec"/> | 310 | </struct> |
| 311 | <comment>The interval in seconds for the metric report.</comment> | 311 | |
| 312 | </elem> | 312 | <!-- MetricMsg type --> |
| 313 | <elem name="metrics" type="Metric" multiplicity="1..*"> | 313 | <struct name="MetricMsg" type="MessageBase" rttkey="Logging.MessageType.MetricMsg"> |
| 314 | <comment>List of metrics being reported.</comment> | 314 | <elem name="start" type="datetime" multiplicity="1" ord="80"> |
| 315 | </elem> | 315 | <comment>The date/time of the start of the report interval. date is end the end of the report interval.</comment> |
| 316 | </struct> | 316 | </elem> |
| 317 | 317 | <elem name="duration" type="uint16" multiplicity="1" ord="81"> | |
| 318 | <!-- | 318 | <tag name="unit" value="sec"/> |
| 319 | ******************************************************* | 319 | <comment>The interval in seconds for the metric report.</comment> |
| 320 | Standard Usage Definitions | 320 | </elem> |
| 321 | ******************************************************* | 321 | <elem name="metrics" type="Metric" multiplicity="1..*" polymorphic="true" ord="82"> |
| 322 | --> | 322 | <comment>List of metrics being reported.</comment> |
| 323 | 323 | </elem> | |
| 324 | <!--TaskReport Msg--> | 324 | </struct> |
| 325 | <struct name="TaskReport" type="Logging.UsageMsg" rttkey='"tpf://taskrpt"'> | 325 | |
| 326 | <comment> | 326 | <!-- |
| 327 | Message reports processing task result data. Tasks are any execution unit the | 327 | ******************************************************* |
| 328 | that is deemed to have a specific beginning and end. This is a fairly generic | 328 | Standard Usage Definitions |
| 329 | definition making the usage report suitable for a variety of applications. | 329 | ******************************************************* |
| 330 | </comment> | 330 | --> |
| 331 | <elem name="taskid" type="string" multiplicity="1"> | 331 | |
| 332 | <comment> | 332 | <!--TaskReport Msg--> |
| 333 | The unique tasks identifier. A source may have multiple tasks, this field assigns | 333 | <struct name="TaskReport" type="Logging.UsageMsg" rttkey='"tpf://taskrpt"'> |
| 334 | an identifier that uniquely characterizes what the task was that was accomplished. | 334 | <comment> |
| 335 | </comment> | 335 | Message reports processing task result data. Tasks are any execution unit the |
| 336 | </elem> | 336 | that is deemed to have a specific beginning and end. This is a fairly generic |
| 337 | <elem name="start" type="datetime" multiplicity="1"> | 337 | definition making the usage report suitable for a variety of applications. |
| 338 | <comment> | 338 | </comment> |
| 339 | The start time at which the processor is used. | 339 | <elem name="taskid" type="string" multiplicity="1" ord="112"> |
| 340 | </comment> | 340 | <comment> |
| 341 | </elem> | 341 | The unique tasks identifier. A source may have multiple tasks, this field assigns |
| 342 | <elem name="duration" type="uint32" multiplicity="1"> | 342 | an identifier that uniquely characterizes what the task was that was accomplished. |
| 343 | <tag name="unit" value="usec"/> | 343 | </comment> |
| 344 | <comment> | 344 | </elem> |
| 345 | The duration of the processing in microseconds. This is not meant to be a high | 345 | <elem name="start" type="datetime" multiplicity="1" ord="113"> |
| 346 | resolution duration monitoring, implement a metric counter for precise timing data. | 346 | <comment> |
| 347 | </comment> | 347 | The start time at which the processor is used. |
| 348 | </elem> | 348 | </comment> |
| 349 | <elem name="status" type="ResultCode" multiplicity="1"> | 349 | </elem> |
| 350 | <comment>The task result code.</comment> | 350 | <elem name="duration" type="uint32" multiplicity="1" ord="114"> |
| 351 | </elem> | 351 | <tag name="unit" value="usec"/> |
| 352 | </struct> | 352 | <comment> |
| 353 | 353 | The duration of the processing in microseconds. This is not meant to be a high | |
| 354 | </namespace> | 354 | resolution duration monitoring, implement a metric counter for precise timing data. |
| 355 | </specification> | 355 | </comment> |
| 356 | </elem> | ||
| 357 | <elem name="status" type="ResultCode" multiplicity="1" ord="115"> | ||
| 358 | <comment>The task result code.</comment> | ||
| 359 | </elem> | ||
| 360 | </struct> | ||
| 361 | |||
| 362 | </namespace> | ||
| 363 | </specification> | ... | ... |
| 1 | <?xml version="1.0" encoding="UTF-8" ?> | ||
| 2 | |||
| 3 | <!-- | ||
| 4 | Copyright (c) 2016, 2017, TeleCommunication Systems, Inc., | ||
| 5 | a wholly-owned subsidiary of Comtech Telecommunications Corp. | ||
| 6 | and/or affiliates of TeleCommunication Systems, Inc. | ||
| 7 | All rights reserved. | ||
| 8 | TeleCommunication Systems, Inc. PROPRIETARY/CONFIDENTIAL. | ||
| 9 | Use is subject to license terms included in the distribution. | ||
| 10 | --> | ||
| 11 | |||
| 12 | <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" | ||
| 13 | targetNamespace="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | ||
| 14 | xmlns="http://xid.location.studio/XID/XtensibleInterfaceDefinition.xsd" | ||
| 15 | elementFormDefault="qualified"> | ||
| 16 | |||
| 17 | <xs:annotation> | ||
| 18 | <xs:documentation xml:lang="en"> | ||
| 19 | XtensibleInterfaceDefinition XML Schema Definition. | ||
| 20 | </xs:documentation> | ||
| 21 | </xs:annotation> | ||
| 22 | |||
| 23 | <xs:element name="specification" type="Specification"/> | ||
| 24 | |||
| 25 | <xs:complexType name="Specification"> | ||
| 26 | <xs:sequence> | ||
| 27 | <xs:element maxOccurs="1" minOccurs="1" name="title" type="xs:normalizedString"/> | ||
| 28 | <xs:choice maxOccurs="unbounded" minOccurs="0"> | ||
| 29 | <xs:element maxOccurs="unbounded" minOccurs="0" name="comment" type="xs:string"/> | ||
| 30 | <xs:element maxOccurs="unbounded" minOccurs="0" name="artifact" type="xs:anyURI"/> | ||
| 31 | <xs:element maxOccurs="unbounded" minOccurs="0" name="tag" type="Tag"/> | ||
| 32 | </xs:choice> | ||
| 33 | <xs:element maxOccurs="unbounded" minOccurs="0" name="import" type="Import"/> | ||
| 34 | <xs:choice maxOccurs="unbounded" minOccurs="0"> | ||
| 35 | <xs:element name="using" maxOccurs="unbounded" minOccurs="0" type="Using"/> | ||
| 36 | <xs:element maxOccurs="unbounded" minOccurs="0" name="namespace" type="Namespace"/> | ||
| 37 | </xs:choice> | ||
| 38 | </xs:sequence> | ||
| 39 | <xs:attribute name="identity" use="required" type="NSName"> | ||
| 40 | <xs:annotation> | ||
| 41 | <xs:documentation xml:lang="en"> | ||
| 42 | Unique name for this spec (e.g. com.company.spec-name) | ||
| 43 | </xs:documentation> | ||
| 44 | </xs:annotation> | ||
| 45 | </xs:attribute> | ||
| 46 | |||
| 47 | </xs:complexType> | ||
| 48 | |||
| 49 | <xs:complexType name="Element"> | ||
| 50 | <xs:choice maxOccurs="unbounded" minOccurs="0"> | ||
| 51 | <xs:element maxOccurs="unbounded" minOccurs="0" name="comment" type="xs:string"/> | ||
| 52 | <xs:element maxOccurs="unbounded" minOccurs="0" name="artifact" type="xs:anyURI"/> | ||
| 53 | <xs:element maxOccurs="unbounded" minOccurs="0" name="tag" type="Tag"/> | ||
| 54 | </xs:choice> | ||
| 55 | </xs:complexType> | ||
| 56 | |||
| 57 | <xs:complexType name="Import"> | ||
| 58 | <xs:complexContent> | ||
| 59 | <xs:extension base="Element"> | ||
| 60 | <xs:attribute name="ref" use="required" type="xs:anyURI" /> | ||
| 61 | <xs:attribute name="local" use="optional" type="xs:normalizedString" /> | ||
| 62 | </xs:extension> | ||
| 63 | </xs:complexContent> | ||
| 64 | </xs:complexType> | ||
| 65 | |||
| 66 | <xs:simpleType name="NSName"> | ||
| 67 | <xs:restriction base="xs:token"> | ||
| 68 | <xs:pattern value="([a-zA-Z][a-zA-Z0-9_]*.)*[a-zA-Z][a-zA-Z0-9_]*"> | ||
| 69 | <xs:annotation> | ||
| 70 | <xs:documentation xml:lang="en"> | ||
| 71 | Fully qualified name (e.g. "SomeNamespace.SomeName" ) or base name (e.g. "SomeName"). | ||
| 72 | </xs:documentation> | ||
| 73 | </xs:annotation> | ||
| 74 | </xs:pattern> | ||
| 75 | </xs:restriction> | ||
| 76 | </xs:simpleType> | ||
| 77 | |||
| 78 | <xs:simpleType name="PName"> | ||
| 79 | <xs:restriction base="NSName"> | ||
| 80 | <xs:pattern value="[a-zA-Z][a-zA-Z0-9_]*"> | ||
| 81 | <xs:annotation> | ||
| 82 | <xs:documentation xml:lang="en"> | ||
| 83 | base name (e.g. "SomeName"). | ||
| 84 | </xs:documentation> | ||
| 85 | </xs:annotation> | ||
| 86 | </xs:pattern> | ||
| 87 | </xs:restriction> | ||
| 88 | </xs:simpleType> | ||
| 89 | |||
| 90 | |||
| 91 | <xs:complexType name="DeclarationBase"> | ||
| 92 | <xs:complexContent> | ||
| 93 | <xs:extension base="Element"> | ||
| 94 | <xs:sequence> | ||
| 95 | <xs:choice maxOccurs="unbounded" minOccurs="0"> | ||
| 96 | <xs:element name="using" maxOccurs="unbounded" minOccurs="0" type="Using"/> | ||
| 97 | <xs:element name="enum" maxOccurs="unbounded" minOccurs="0" type="Enumeration"/> | ||
| 98 | <xs:element name="type" maxOccurs="unbounded" minOccurs="0" type="Type"/> | ||
| 99 | <xs:element name="array" maxOccurs="unbounded" minOccurs="0" type="Array"/> | ||
| 100 | <xs:element name="struct" maxOccurs="unbounded" minOccurs="0" type="Structure"/> | ||
| 101 | </xs:choice> | ||
| 102 | </xs:sequence> | ||
| 103 | </xs:extension> | ||
| 104 | </xs:complexContent> | ||
| 105 | </xs:complexType> | ||
| 106 | |||
| 107 | <xs:complexType name="Namespace"> | ||
| 108 | <xs:complexContent> | ||
| 109 | <xs:extension base="DeclarationBase"> | ||
| 110 | <xs:sequence> | ||
| 111 | <xs:element name="interface" maxOccurs="unbounded" minOccurs="0" type="Interface"/> | ||
| 112 | </xs:sequence> | ||
| 113 | <xs:attribute name="name" use="required" type="NSName" /> | ||
| 114 | </xs:extension> | ||
| 115 | </xs:complexContent> | ||
| 116 | </xs:complexType> | ||
| 117 | |||
| 118 | <xs:complexType name="Using"> | ||
| 119 | <xs:complexContent> | ||
| 120 | <xs:extension base="Element"> | ||
| 121 | <xs:attribute name="namespace" use="required" type="NSName"/> | ||
| 122 | </xs:extension> | ||
| 123 | </xs:complexContent> | ||
| 124 | </xs:complexType> | ||
| 125 | |||
| 126 | <xs:complexType name="TypeBase"> | ||
| 127 | <xs:complexContent> | ||
| 128 | <xs:extension base="Element"> | ||
| 129 | <xs:attribute name="name" use="required" type="PName" /> | ||
| 130 | <xs:attribute name="size" default="-1" type="Size"> | ||
| 131 | <xs:annotation> | ||
| 132 | <xs:documentation xml:lang="en"> | ||
| 133 | "size" is used to denote fixed sized types. | ||
| 134 | Only fixed size types can be used in array and packed struct. | ||
| 135 | Array with a fixed size (dimension) is a fixed sized type, | ||
| 136 | and can be further used in an array or packed struct. | ||
| 137 | </xs:documentation> | ||
| 138 | </xs:annotation> | ||
| 139 | </xs:attribute> | ||
| 140 | </xs:extension> | ||
| 141 | </xs:complexContent> | ||
| 142 | </xs:complexType> | ||
| 143 | |||
| 144 | |||
| 145 | <xs:complexType name="Type"> | ||
| 146 | <xs:complexContent> | ||
| 147 | <xs:extension base="TypeBase"> | ||
| 148 | <xs:sequence> | ||
| 149 | <xs:element name="lang" maxOccurs="unbounded" minOccurs="0" type="TypeLang"/> | ||
| 150 | </xs:sequence> | ||
| 151 | </xs:extension> | ||
| 152 | </xs:complexContent> | ||
| 153 | </xs:complexType> | ||
| 154 | |||
| 155 | <xs:complexType name="TypeLang"> | ||
| 156 | <xs:complexContent> | ||
| 157 | <xs:extension base="Element"> | ||
| 158 | <xs:attribute name="name" use="required" type="xs:string" /> | ||
| 159 | <xs:attribute name="type" use="required" type="xs:string" /> | ||
| 160 | <xs:attribute name="include" use="optional" type="xs:string"> | ||
| 161 | <xs:annotation> | ||
| 162 | <xs:documentation xml:lang="en"> | ||
| 163 | "include" content is dependent on the language. | ||
| 164 | "size" is used to denote fixed sized types. | ||
| 165 | Only fixed size types can be used in array and packed struct. | ||
| 166 | Array with a fixed size (dimension) is a fixed sized type, | ||
| 167 | and can be further used in an array or packed struct. | ||
| 168 | </xs:documentation> | ||
| 169 | </xs:annotation> | ||
| 170 | </xs:attribute> | ||
| 171 | </xs:extension> | ||
| 172 | </xs:complexContent> | ||
| 173 | </xs:complexType> | ||
| 174 | |||
| 175 | <xs:complexType name="DeclarationTypeBase"> | ||
| 176 | <xs:complexContent> | ||
| 177 | <xs:extension base="TypeBase"> | ||
| 178 | <xs:sequence> | ||
| 179 | <xs:choice maxOccurs="unbounded" minOccurs="0"> | ||
| 180 | <xs:element name="using" maxOccurs="unbounded" minOccurs="0" type="Using"/> | ||
| 181 | <xs:element name="enum" maxOccurs="unbounded" minOccurs="0" type="Enumeration"/> | ||
| 182 | <xs:element name="type" maxOccurs="unbounded" minOccurs="0" type="Type"/> | ||
| 183 | <xs:element name="array" maxOccurs="unbounded" minOccurs="0" type="Array"/> | ||
| 184 | <xs:element name="struct" maxOccurs="unbounded" minOccurs="0" type="Structure"/> | ||
| 185 | </xs:choice> | ||
| 186 | </xs:sequence> | ||
| 187 | </xs:extension> | ||
| 188 | </xs:complexContent> | ||
| 189 | </xs:complexType> | ||
| 190 | |||
| 191 | <xs:complexType name="Structure"> | ||
| 192 | <xs:complexContent> | ||
| 193 | <xs:extension base="DeclarationTypeBase"> | ||
| 194 | <xs:sequence> | ||
| 195 | <xs:element name="elem" maxOccurs="unbounded" minOccurs="0" type="Elem"/> | ||
| 196 | </xs:sequence> | ||
| 197 | <xs:attribute name="type" use="optional" type="NSName"/> | ||
| 198 | <xs:attribute name="rttkey" use="optional" type="xs:string"> | ||
| 199 | <xs:annotation> | ||
| 200 | <xs:documentation xml:lang="en"> | ||
| 201 | rttkey defines the key value used to identify this | ||
| 202 | type from other types in the inheritance chain. | ||
| 203 | This key value is used to generate and register a type | ||
| 204 | specific factory. | ||
| 205 | </xs:documentation> | ||
| 206 | </xs:annotation> | ||
| 207 | </xs:attribute> | ||
| 208 | <xs:attribute name="pack" default="false" type="xs:boolean"> | ||
| 209 | <xs:annotation> | ||
| 210 | <xs:documentation xml:lang="en"> | ||
| 211 | Inherited "pack" takes prescedence. | ||
| 212 | If "pack" is true, all elems must be a fixed sized type and "ord" on elems are ignored. | ||
| 213 | "pack" impacts the XMF encoding. | ||
| 214 | </xs:documentation> | ||
| 215 | </xs:annotation> | ||
| 216 | </xs:attribute> | ||
| 217 | </xs:extension> | ||
| 218 | </xs:complexContent> | ||
| 219 | </xs:complexType> | ||
| 220 | |||
| 221 | <xs:complexType name="ExtStruct"> | ||
| 222 | <xs:complexContent> | ||
| 223 | <!-- This will eventually be a Structure derivative --> | ||
| 224 | <!-- Structure requires <elem> and has attribute "inherit" ... which should change to "type" --> | ||
| 225 | <xs:extension base="Structure"> | ||
| 226 | <xs:attribute name="sid" use="optional" default="0" type="IntegerOrHex" /> | ||
| 227 | <xs:attribute name="encoding" use="optional" default="native" type="Encoding"> | ||
| 228 | <xs:annotation> | ||
| 229 | <xs:documentation xml:lang="en"> | ||
| 230 | Document this. | ||
| 231 | </xs:documentation> | ||
| 232 | </xs:annotation> | ||
| 233 | </xs:attribute> | ||
| 234 | </xs:extension> | ||
| 235 | </xs:complexContent> | ||
| 236 | </xs:complexType> | ||
| 237 | |||
| 238 | <xs:complexType name="ExtStyle"> | ||
| 239 | <xs:complexContent> | ||
| 240 | <!-- This will eventually be a Structure derivative --> | ||
| 241 | <!-- Structure requires <elem> and has attribute "type" --> | ||
| 242 | <xs:extension base="ExtStruct"> | ||
| 243 | <xs:attribute name="style" use="optional" default="callback" type="OutputStyle"> | ||
| 244 | <xs:annotation> | ||
| 245 | <xs:documentation xml:lang="en"> | ||
| 246 | Document this. | ||
| 247 | </xs:documentation> | ||
| 248 | </xs:annotation> | ||
| 249 | </xs:attribute> | ||
| 250 | </xs:extension> | ||
| 251 | </xs:complexContent> | ||
| 252 | </xs:complexType> | ||
| 253 | |||
| 254 | <xs:simpleType name="OutputStyle"> | ||
| 255 | <xs:restriction base="xs:token"> | ||
| 256 | <xs:pattern value="callback|arg|return"> | ||
| 257 | <xs:annotation> | ||
| 258 | <xs:documentation xml:lang="en"> | ||
| 259 | native=native format (xmf, json, etc.), same as index=0. | ||
| 260 | raw=codec defined outside encoding, same as index=1. | ||
| 261 | xmf=always XMF, same as index=2. | ||
| 262 | json=always json, same as index=3. | ||
| 263 | number=index into encoding table (first 255 are reserved). | ||
| 264 | PName=dynamic, name of element that holds the encoding value. | ||
| 265 | </xs:documentation> | ||
| 266 | </xs:annotation> | ||
| 267 | </xs:pattern> | ||
| 268 | </xs:restriction> | ||
| 269 | </xs:simpleType> | ||
| 270 | |||
| 271 | <xs:simpleType name="Size"> | ||
| 272 | <xs:restriction base="xs:integer"> | ||
| 273 | <xs:minInclusive value="-1"/> | ||
| 274 | </xs:restriction> | ||
| 275 | </xs:simpleType> | ||
| 276 | |||
| 277 | <xs:complexType name="Array"> | ||
| 278 | <xs:annotation> | ||
| 279 | <xs:documentation xml:lang="en"> | ||
| 280 | An Array with a fixed "size" can be used as a fixed sized type. | ||
| 281 | </xs:documentation> | ||
| 282 | </xs:annotation> | ||
| 283 | <xs:complexContent> | ||
| 284 | <xs:extension base="TypeBase"> | ||
| 285 | <xs:attribute name="type" use="required" type="NSName"> | ||
| 286 | <xs:annotation> | ||
| 287 | <xs:documentation xml:lang="en"> | ||
| 288 | Must be a type with a fixed "size". | ||
| 289 | </xs:documentation> | ||
| 290 | </xs:annotation> | ||
| 291 | </xs:attribute> | ||
| 292 | </xs:extension> | ||
| 293 | </xs:complexContent> | ||
| 294 | </xs:complexType> | ||
| 295 | |||
| 296 | <xs:complexType name="Enumeration"> | ||
| 297 | <xs:complexContent> | ||
| 298 | <xs:extension base="TypeBase"> | ||
| 299 | <xs:sequence> | ||
| 300 | <xs:element maxOccurs="unbounded" minOccurs="1" name="literal" type="EnumerationLiteral"/> | ||
| 301 | </xs:sequence> | ||
| 302 | <xs:attribute name="type" use="required" type="EnumerationType"/> | ||
| 303 | <xs:attribute name="default" use="required" type="PName"/> | ||
| 304 | </xs:extension> | ||
| 305 | </xs:complexContent> | ||
| 306 | </xs:complexType> | ||
| 307 | |||
| 308 | <xs:simpleType name="EnumerationType"> | ||
| 309 | <xs:restriction base="NSName"> | ||
| 310 | <xs:enumeration value="Tensor.int8"/> | ||
| 311 | <xs:enumeration value="Tensor.uint8"/> | ||
| 312 | <xs:enumeration value="Tensor.int16"/> | ||
| 313 | <xs:enumeration value="Tensor.uint16"/> | ||
| 314 | <xs:enumeration value="Tensor.int32"/> | ||
| 315 | <xs:enumeration value="Tensor.uint32"/> | ||
| 316 | <xs:enumeration value="int8"/> | ||
| 317 | <xs:enumeration value="uint8"/> | ||
| 318 | <xs:enumeration value="int16"/> | ||
| 319 | <xs:enumeration value="uint16"/> | ||
| 320 | <xs:enumeration value="int32"/> | ||
| 321 | <xs:enumeration value="uint32"/> | ||
| 322 | </xs:restriction> | ||
| 323 | </xs:simpleType> | ||
| 324 | |||
| 325 | <xs:complexType name="EnumerationLiteral"> | ||
| 326 | <xs:complexContent> | ||
| 327 | <xs:extension base="Element"> | ||
| 328 | <xs:attribute name="name" use="required" type="PName" /> | ||
| 329 | <xs:attribute name="value" use="required" type="IntegerOrHex"/> | ||
| 330 | </xs:extension> | ||
| 331 | </xs:complexContent> | ||
| 332 | </xs:complexType> | ||
| 333 | |||
| 334 | <xs:simpleType name="IntegerOrHex"> | ||
| 335 | <xs:restriction base="xs:token"> | ||
| 336 | <xs:pattern value="((0)|([-]?[1-9][0-9]*)|(0x([0-9a-fA-F]{2})+))"/> | ||
| 337 | </xs:restriction> | ||
| 338 | </xs:simpleType> | ||
| 339 | |||
| 340 | |||
| 341 | <!-- | ||
| 342 | <xs:complexType name="Tag"> | ||
| 343 | <xs:complexContent> | ||
| 344 | <xs:extension base="Element"> | ||
| 345 | <xs:attribute name="name" use="required" type="xs:normalizedString" /> | ||
| 346 | <xs:attribute name="value" use="required" type="xs:normalizedString" /> | ||
| 347 | </xs:extension> | ||
| 348 | </xs:complexContent> | ||
| 349 | </xs:complexType> | ||
| 350 | --> | ||
| 351 | |||
| 352 | <xs:complexType name="Tag"> | ||
| 353 | <xs:attribute name="name" use="required" type="xs:normalizedString" /> | ||
| 354 | <xs:attribute name="value" use="required" type="xs:normalizedString" /> | ||
| 355 | </xs:complexType> | ||
| 356 | |||
| 357 | |||
| 358 | <xs:complexType name="Elem"> | ||
| 359 | <xs:complexContent> | ||
| 360 | <xs:extension base="Element"> | ||
| 361 | <xs:attribute name="name" use="required" type="PName" /> | ||
| 362 | <xs:attribute name="type" use="required" type="NSName" /> | ||
| 363 | <xs:attribute name="polymorphic" default="false" type="xs:boolean"/> | ||
| 364 | <xs:attribute name="multiplicity" default="1" type="Multiplicity"/> | ||
| 365 | <xs:attribute name="default" use="optional" type="xs:normalizedString"/> | ||
| 366 | <xs:attribute name="ord" default="L" type="LPGIntegerOrHex" /> | ||
| 367 | <xs:attribute name="rttd" default="false" type="xs:boolean"> | ||
| 368 | <xs:annotation> | ||
| 369 | <xs:documentation xml:lang="en"> | ||
| 370 | rttd identified this element in the struct as | ||
| 371 | being the RTT Designator. | ||
| 372 | </xs:documentation> | ||
| 373 | </xs:annotation> | ||
| 374 | </xs:attribute> | ||
| 375 | <xs:attribute name="encoding" use="optional" default="native" type="Encoding"> | ||
| 376 | <xs:annotation> | ||
| 377 | <xs:documentation xml:lang="en"> | ||
| 378 | rttkey defines the key value used to identify this | ||
| 379 | type from other types in the inheritance chain. | ||
| 380 | This key value is used to generate and register a type | ||
| 381 | specific factory. | ||
| 382 | </xs:documentation> | ||
| 383 | </xs:annotation> | ||
| 384 | </xs:attribute> | ||
| 385 | </xs:extension> | ||
| 386 | </xs:complexContent> | ||
| 387 | </xs:complexType> | ||
| 388 | |||
| 389 | <xs:simpleType name="LPGIntegerOrHex"> | ||
| 390 | <xs:restriction base="xs:token"> | ||
| 391 | <xs:pattern value="(([LPG])|(0)|([1-9][0-9]*)|(0x([0-9a-fA-F]{2})+))"/> | ||
| 392 | </xs:restriction> | ||
| 393 | </xs:simpleType> | ||
| 394 | |||
| 395 | |||
| 396 | <xs:simpleType name="Multiplicity"> | ||
| 397 | <xs:restriction base="xs:token"> | ||
| 398 | <xs:enumeration value="0..1"> | ||
| 399 | <xs:annotation> | ||
| 400 | <xs:documentation xml:lang="en"> | ||
| 401 | Optional. | ||
| 402 | </xs:documentation> | ||
| 403 | </xs:annotation> | ||
| 404 | </xs:enumeration> | ||
| 405 | <xs:enumeration value="1"> | ||
| 406 | <xs:annotation> | ||
| 407 | <xs:documentation xml:lang="en"> | ||
| 408 | Required. | ||
| 409 | </xs:documentation> | ||
| 410 | </xs:annotation> | ||
| 411 | </xs:enumeration> | ||
| 412 | <xs:enumeration value="0..*"> | ||
| 413 | <xs:annotation> | ||
| 414 | <xs:documentation xml:lang="en"> | ||
| 415 | Zero or more. | ||
| 416 | </xs:documentation> | ||
| 417 | </xs:annotation> | ||
| 418 | </xs:enumeration> | ||
| 419 | <xs:enumeration value="1..*"> | ||
| 420 | <xs:annotation> | ||
| 421 | <xs:documentation xml:lang="en"> | ||
| 422 | Atleast one. | ||
| 423 | </xs:documentation> | ||
| 424 | </xs:annotation> | ||
| 425 | </xs:enumeration> | ||
| 426 | </xs:restriction> | ||
| 427 | </xs:simpleType> | ||
| 428 | |||
| 429 | <xs:simpleType name="Encoding"> | ||
| 430 | <xs:restriction base="xs:token"> | ||
| 431 | <xs:pattern value="((native)|(raw)|(xmf)|(json)|(0)|([1-9][0-9]*)|(0x([0-9a-fA-F]{2}))|(0x([0-9a-fA-F]{4}))|([a-zA-Z][a-zA-Z0-9_]*))"> | ||
| 432 | <xs:annotation> | ||
| 433 | <xs:documentation xml:lang="en"> | ||
| 434 | native=native format (xmf, json, etc.), same as index=0. | ||
| 435 | raw=codec defined outside encoding, same as index=1. | ||
| 436 | xmf=always XMF, same as index=2. | ||
| 437 | json=always json, same as index=3. | ||
| 438 | number=index into encoding table (first 255 are reserved). | ||
| 439 | PName=dynamic, name of element that holds the encoding value. | ||
| 440 | </xs:documentation> | ||
| 441 | </xs:annotation> | ||
| 442 | </xs:pattern> | ||
| 443 | </xs:restriction> | ||
| 444 | </xs:simpleType> | ||
| 445 | |||
| 446 | <xs:complexType name="Interface"> | ||
| 447 | <xs:complexContent> | ||
| 448 | <xs:extension base="DeclarationBase"> | ||
| 449 | <xs:choice maxOccurs="unbounded" minOccurs="1"> | ||
| 450 | <xs:element maxOccurs="unbounded" minOccurs="0" name="operation" type="Operation"/> | ||
| 451 | <xs:element maxOccurs="unbounded" minOccurs="0" name="event" type="Event"/> | ||
| 452 | </xs:choice> | ||
| 453 | <xs:attribute name="name" use="required" type="PName" /> | ||
| 454 | </xs:extension> | ||
| 455 | </xs:complexContent> | ||
| 456 | </xs:complexType> | ||
| 457 | |||
| 458 | <xs:complexType name="Operation"> | ||
| 459 | <xs:complexContent> | ||
| 460 | <xs:extension base="DeclarationBase"> | ||
| 461 | <xs:sequence> | ||
| 462 | <xs:element maxOccurs="1" minOccurs="0" name="input" type="ExtStruct"/> | ||
| 463 | <xs:element maxOccurs="1" minOccurs="0" name="output" type="ExtStyle"/> | ||
| 464 | </xs:sequence> | ||
| 465 | <xs:attribute name="name" use="required" type="PName" /> | ||
| 466 | </xs:extension> | ||
| 467 | </xs:complexContent> | ||
| 468 | </xs:complexType> | ||
| 469 | |||
| 470 | <xs:complexType name="Event"> | ||
| 471 | <xs:complexContent> | ||
| 472 | <xs:extension base="DeclarationBase"> | ||
| 473 | <xs:sequence> | ||
| 474 | <xs:element maxOccurs="1" minOccurs="0" name="data" type="ExtStruct"/> | ||
| 475 | </xs:sequence> | ||
| 476 | <xs:attribute name="name" use="required" type="PName" /> | ||
| 477 | </xs:extension> | ||
| 478 | </xs:complexContent> | ||
| 479 | </xs:complexType> | ||
| 480 | |||
| 481 | </xs:schema> |
license.md
0 → 100644
| 1 | # SDK Source | ||
| 2 | An open-source style license for the SDK source code is covered under: | ||
| 3 | |||
| 4 | [LocationStudioSDKLicense.md](https://git.location.studio/location.studio/ilpsdk/blob/master/licenses/LocationStudioSDKLicense.md) | ||
| 5 | |||
| 6 | # Protocols | ||
| 7 | The API protocol (design, content and usage) is covered under: | ||
| 8 | |||
| 9 | [LocationStudioAPILicense.md](https://git.location.studio/location.studio/ilpsdk/blob/master/licenses/LocationStudioAPILicense.md) |
-
Please register or sign in to post a comment