V1.1 with updated JSON and XMF types and proper references.
Showing
7 changed files
with
396 additions
and
0 deletions
Tensor/V1.1/ApiBase.xid.xml
0 → 100644
| 1 | <?xml version="1.0" encoding="UTF-8" ?> | ||
| 2 | |||
| 3 | <!-- | ||
| 4 | Copyright (c) 2018, 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="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 13 | xmlns:xid="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 14 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
| 15 | xsi:schemaLocation="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 16 | identity="ApiBase.xid.xml"> | ||
| 17 | |||
| 18 | <title>Tensor Microservices API Base Definitions</title> | ||
| 19 | <comment> | ||
| 20 | This document defines the common types API service interface (input and output base structures) for the Tensor microservices definitions. | ||
| 21 | </comment> | ||
| 22 | <import ref="https://xid.location.studio/Tensor/V1.1/Common.xid.xml" local="Common.xid.xml" /> | ||
| 23 | |||
| 24 | <namespace name="Tensor"> | ||
| 25 | |||
| 26 | <!-- | ||
| 27 | ******************************* | ||
| 28 | *InputBase Type Definition | ||
| 29 | ******************************* | ||
| 30 | --> | ||
| 31 | <struct name="InputBase" > | ||
| 32 | <comment>Base input fields for operations supporting asynchronous transaction information.</comment> | ||
| 33 | <elem name="devid" multiplicity="0..1" type="string" ord="64"> | ||
| 34 | <comment> | ||
| 35 | Optional device identifier, that provides a consistent multi-transaction identifier | ||
| 36 | for a device or equivalent (e.g. service identifier) providing the data. Any errors or issues resulting from processing the data will include this identifier | ||
| 37 | in the system logs, providing traceability. Identifier should be unique. | ||
| 38 | </comment> | ||
| 39 | </elem> | ||
| 40 | <elem name="etid" multiplicity="0..1" type="string" ord="65"> | ||
| 41 | <comment> | ||
| 42 | Optional external transaction identifier for the caller to uniquely identify and track | ||
| 43 | the transaction and corresponding results. These identifiers will appear in the | ||
| 44 | service logs for traceability analysis. The format of the transaction identifier is up to the caller | ||
| 45 | and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by | ||
| 46 | the service. | ||
| 47 | </comment> | ||
| 48 | </elem> | ||
| 49 | <elem name="directive" multiplicity="0..*" type="NameValue" ord="66"> | ||
| 50 | <comment> | ||
| 51 | A set of directives to influence processing. | ||
| 52 | </comment> | ||
| 53 | </elem> | ||
| 54 | </struct> | ||
| 55 | |||
| 56 | |||
| 57 | <!-- | ||
| 58 | ******************************* | ||
| 59 | *OutputBase Type Definition | ||
| 60 | ******************************* | ||
| 61 | --> | ||
| 62 | <struct name="OutputBase" > | ||
| 63 | <comment>Base output fields common to operations supporting asynchronous returning transaction information.</comment> | ||
| 64 | <elem name="devid" multiplicity="0..1" type="string" ord="64"> | ||
| 65 | <comment> | ||
| 66 | Device identifier provided at operation input, provides a consistent identifier | ||
| 67 | for a device or equivalent (e.g. service identifier) providing the data. Any errors or issues resulting from processing the data will include this identifier | ||
| 68 | in the service logs, providing traceability. | ||
| 69 | </comment> | ||
| 70 | </elem> | ||
| 71 | |||
| 72 | <elem name="etid" multiplicity="0..1" type="string" ord="65"> | ||
| 73 | <comment> | ||
| 74 | Optional external transaction identifier for the caller to uniquely identify and track | ||
| 75 | the transaction and corresponding results. These identifiers appear in the | ||
| 76 | ILP system logs for traceability analysis. The format of the transaction identifier is up to the caller | ||
| 77 | and can be anything: e.g. [uuid], [id1.subid0], [numerical], etc. This data is never interpreted by | ||
| 78 | the ILP system. | ||
| 79 | </comment> | ||
| 80 | |||
| 81 | </elem> | ||
| 82 | |||
| 83 | <elem name="resultcode" type="ResultCode" multiplicity="1" ord="66"> | ||
| 84 | <comment>Result of the operation.</comment> | ||
| 85 | </elem> | ||
| 86 | |||
| 87 | <elem name="errinfo" type="Tensor.string" multiplicity="0..1" ord="67"> | ||
| 88 | <comment>Error information if result was not success.</comment> | ||
| 89 | </elem> | ||
| 90 | |||
| 91 | </struct> | ||
| 92 | |||
| 93 | </namespace> | ||
| 94 | </specification> |
Tensor/V1.1/Command.xid.xml
0 → 100644
| 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="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 13 | xmlns:xid="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 14 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
| 15 | xsi:schemaLocation="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 16 | identity="Command.xid.xml"> | ||
| 17 | <title>Tensor Command</title> | ||
| 18 | <comment></comment> | ||
| 19 | <artifact></artifact> | ||
| 20 | |||
| 21 | <import ref="https://xid.location.studio/Tensor/V1.1/Common.xid.xml" local="Common.xid.xml" /> | ||
| 22 | |||
| 23 | <namespace name="Tensor"> | ||
| 24 | |||
| 25 | <!-- | ||
| 26 | ************************************ | ||
| 27 | * Command API Implementation | ||
| 28 | ************************************ | ||
| 29 | --> | ||
| 30 | <struct name="Command"> | ||
| 31 | <comment>A TPF command structure compatible with the TPF Framework Commander Component.</comment> | ||
| 32 | <elem name="name" type="Tensor.string" multiplicity="1" ord="64"> | ||
| 33 | <comment>The command name including scope specifiers. Convention is to use a '.' as a scope separator | ||
| 34 | such as[component name].[command name].</comment> | ||
| 35 | </elem> | ||
| 36 | |||
| 37 | <elem name="etid" type="Tensor.string" multiplicity="0..1" ord="65"> | ||
| 38 | <comment> | ||
| 39 | Optional external transaction identifier for the caller to uniquely identify and track | ||
| 40 | the command and corresponding results. | ||
| 41 | </comment> | ||
| 42 | </elem> | ||
| 43 | |||
| 44 | <elem name="argument" type="NameValue" multiplicity="0..*" ord="66"> | ||
| 45 | <comment> | ||
| 46 | Each command may have zero or more arguments. | ||
| 47 | They may be name/value or oridinal/value arguments. | ||
| 48 | Both name and value are required. | ||
| 49 | </comment> | ||
| 50 | </elem> | ||
| 51 | </struct> | ||
| 52 | |||
| 53 | <struct name="CommandResponse"> | ||
| 54 | <comment> | ||
| 55 | The command response structure containing information resulting from executing the | ||
| 56 | command (success or failure). Check the result code for details on status of executing the | ||
| 57 | command a value of 1 means success, value of 0 is undefined, See ResultCode for other standard | ||
| 58 | result codes. Each operation may define additional codes. | ||
| 59 | </comment> | ||
| 60 | <elem name="name" type="Tensor.string" multiplicity="1" ord="64"> | ||
| 61 | <comment> | ||
| 62 | The command name including scope specifiers. Convention is to use a '.' as a scope separator | ||
| 63 | such as[component name].[command name]. | ||
| 64 | </comment> | ||
| 65 | </elem> | ||
| 66 | |||
| 67 | <elem name="etid" type="Tensor.string" multiplicity="0..1" ord="65"> | ||
| 68 | <comment> | ||
| 69 | Optional external transaction identifier for the caller to uniquely identify and track | ||
| 70 | the command and corresponding results. | ||
| 71 | </comment> | ||
| 72 | </elem> | ||
| 73 | |||
| 74 | <elem name="result" type="Tensor.int8" multiplicity="1" ord="66"> | ||
| 75 | <comment>The processing result code. 1 is success, 0 is undefined, -1 is a failure.</comment> | ||
| 76 | </elem> | ||
| 77 | |||
| 78 | <elem name="output" type="Tensor.string" multiplicity="0..1" ord="67"> | ||
| 79 | <comment> | ||
| 80 | Optional command output stored as a string. Interpeting the output data is dependent upon the | ||
| 81 | command function executed and what data formats are as an encodded string. | ||
| 82 | </comment> | ||
| 83 | </elem> | ||
| 84 | </struct> | ||
| 85 | |||
| 86 | <interface name="CommandApi"> | ||
| 87 | <comment>Interface executing commands inside TPF Containers.</comment> | ||
| 88 | |||
| 89 | <operation name="Execute"> | ||
| 90 | <comment> | ||
| 91 | Executes the specified command elements. Can specify whether to return responses (default true) or not using wantresponses. | ||
| 92 | </comment> | ||
| 93 | <input name="input" sid="0x0100"> | ||
| 94 | <elem name="commands" multiplicity="1..*" type="Command" ord="64"/> | ||
| 95 | <elem name="wantresponses" multiplicity="1" type="Tensor.bool" ord="65" default="true"/> | ||
| 96 | </input> | ||
| 97 | <output name="output" sid="0x0101"> | ||
| 98 | <elem name="lastcommand" type="Tensor.int8" multiplicity="1" ord="64"> | ||
| 99 | <comment>The index of the last command executed. If this is less than the total number of commands a failure occurred.</comment> | ||
| 100 | </elem> | ||
| 101 | <elem name="lastresult" type="Tensor.int8" multiplicity="1" ord="65"> | ||
| 102 | <comment>The last processing result code. 1 is success, 0 is undefined, -1 is a failure.</comment> | ||
| 103 | </elem> | ||
| 104 | <elem name="responses" type="CommandResponse" multiplicity="1..*" ord="66"> | ||
| 105 | <comment>A command response for each command executed.</comment> | ||
| 106 | </elem> | ||
| 107 | </output> | ||
| 108 | </operation> | ||
| 109 | </interface> | ||
| 110 | </namespace> | ||
| 111 | </specification> |
Tensor/V1.1/Common.xid.xml
0 → 100644
| 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="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 13 | xmlns:xid="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 14 | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
| 15 | xsi:schemaLocation="https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd https://xid.location.studio/schema/V1.0.0/XtensibleInterfaceDefinition.xsd" | ||
| 16 | identity="Common.xid.xml"> | ||
| 17 | <title>Tensor Common Definitions</title> | ||
| 18 | <comment></comment> | ||
| 19 | <artifact></artifact> | ||
| 20 | |||
| 21 | <import ref="https://xid.location.studio/Tensor/V1.1/Definitions.xid.xml" local="Definitions.xid.xml" /> | ||
| 22 | |||
| 23 | <namespace name="Tensor"> | ||
| 24 | <struct name="NameValue" > | ||
| 25 | <comment>A string base name value pair entry.</comment> | ||
| 26 | <elem name="name" type="Tensor.string" ord="64"/> | ||
| 27 | <elem name="value" type="Tensor.string" ord="65"/> | ||
| 28 | </struct> | ||
| 29 | |||
| 30 | <enum name="ResultCode" type="Tensor.int8" default="undefined"> | ||
| 31 | <comment>General processing result codes.</comment> | ||
| 32 | <literal name="success" value="1"/> | ||
| 33 | <literal name="undefined" value="0"/> | ||
| 34 | <literal name="failure" value="-1" /> | ||
| 35 | <literal name="busy" value="-2" /> | ||
| 36 | <literal name="processingError" value="-3"/> | ||
| 37 | <literal name="parsingError" value="-4"/> | ||
| 38 | <literal name="malformedRequest" value="-5"/> | ||
| 39 | <literal name="encodingError" value="-6"/> | ||
| 40 | |||
| 41 | </enum> | ||
| 42 | |||
| 43 | <struct name="VoidType"> | ||
| 44 | <comment>Reserved type used in various translations to preserve translation. It has no purpose but as a placeholder. This is different from type "void" in Definitions.xid</comment> | ||
| 45 | <elem name="reserved" type="Tensor.uint16" multiplicity="1" ord="64"/> | ||
| 46 | </struct> | ||
| 47 | |||
| 48 | <enum name="WirelineFormat" type="Tensor.uint8" default="undefined"> | ||
| 49 | <comment>Enum defines the wireline data format of XID interactions. These are defined to facilitate standard definitions within XID interactions independent of the | ||
| 50 | specific transport protocol or XID conduit.</comment> | ||
| 51 | <literal name ="undefined" value = "0"/> | ||
| 52 | <literal name ="raw" value = "1"/> | ||
| 53 | <literal name ="base64" value = "2"/> | ||
| 54 | <literal name ="hex" value = "3"/> | ||
| 55 | </enum> | ||
| 56 | |||
| 57 | <enum name="ContentType" type="Tensor.uint8" default="undefined"> | ||
| 58 | <comment>Enum defines the content type of XID interactions. These are defined to facilitate standard definitions within XID interactions independent of the | ||
| 59 | specific transport protocol or XID conduit.</comment> | ||
| 60 | <literal name ="undefined" value = "0"/> | ||
| 61 | <literal name ="dataobject" value = "1"/> | ||
| 62 | <literal name ="xmf" value = "2"/> | ||
| 63 | <literal name ="json" value = "3"/> | ||
| 64 | </enum> | ||
| 65 | |||
| 66 | <enum name="InteractionRole" type="Tensor.uint8" default="undefined"> | ||
| 67 | <comment>InteractionRole defines the role of the conduit in a XID interaction. | ||
| 68 | A Conduit port must adopt either the target or initiator role to preserve | ||
| 69 | interaction continuity and conventions.</comment> | ||
| 70 | <literal name ="undefined" value = "0"/> | ||
| 71 | <literal name ="target" value = "1"/> | ||
| 72 | <literal name ="initiator" value = "2"/> | ||
| 73 | </enum> | ||
| 74 | |||
| 75 | </namespace> | ||
| 76 | </specification> |
Tensor/V1.1/Definitions.xid.xml
0 → 100644
This diff is collapsed.
Click to expand it.
Tensor/V1.1/Logging.xid.xml
0 → 100644
This diff is collapsed.
Click to expand it.
Tensor/V1.1/README.md
0 → 100644
| 1 | # Tensor XIDs # | ||
| 2 | Tensor XIDs have all their ordinals (i.e. tags) specified and do not use packed data types. Therefore, XIDData.prop is not strictly needed but is supplied as a check-n-balance. | ||
| 3 | |||
| 4 | ## Generate / Verify XIDData.prop ## | ||
| 5 | |||
| 6 | ~~~sh | ||
| 7 | $ java -Xnoclassgc -jar $XIDSDK/bin/xidcg.jar \ | ||
| 8 | -v \ | ||
| 9 | -prop https://xid.location.studio/Tensor/V1.1/XIDData.prop \ | ||
| 10 | https://xid.location.studio/Tensor/V1.1/ApiBase.xid.xml \ | ||
| 11 | https://xid.location.studio/Tensor/V1.1/Command.xid.xml \ | ||
| 12 | https://xid.location.studio/Tensor/V1.1/Common.xid.xml \ | ||
| 13 | https://xid.location.studio/Tensor/V1.1/Definitions.xid.xml \ | ||
| 14 | https://xid.location.studio/Tensor/V1.1/Logging.xid.xml | ||
| 15 | |||
| 16 | OR | ||
| 17 | |||
| 18 | $ java -Xnoclassgc -jar $XIDSDK/bin/xidcg.jar \ | ||
| 19 | -v \ | ||
| 20 | -prop XIDData.prop \ | ||
| 21 | ApiBase.xid.xml \ | ||
| 22 | Command.xid.xml \ | ||
| 23 | Common.xid.xml \ | ||
| 24 | Definitions.xid.xml \ | ||
| 25 | Logging.xid.xml | ||
| 26 | ~~~ | ||
| 27 | |||
| 28 | If xidcg reports: | ||
| 29 | |||
| 30 | ~~~ | ||
| 31 | Generating: xidout/meta/XID/XIDData.prop | ||
| 32 | ~~~ | ||
| 33 | |||
| 34 | Then something has changed and XIDData.prop needs to get updated. | ||
| 35 |
Tensor/V1.1/XIDData.prop
0 → 100644
| 1 | Ord.Logging.ActionMsg.category=98 | ||
| 2 | Ord.Logging.ActionMsg.id=96 | ||
| 3 | Ord.Logging.ActionMsg.iid=99 | ||
| 4 | Ord.Logging.ActionMsg.severity=97 | ||
| 5 | Ord.Logging.AppMetrics.currentCount=81 | ||
| 6 | Ord.Logging.AppMetrics.failureCount=86 | ||
| 7 | Ord.Logging.AppMetrics.peakCount=82 | ||
| 8 | Ord.Logging.AppMetrics.peakTime=84 | ||
| 9 | Ord.Logging.AppMetrics.successCount=85 | ||
| 10 | Ord.Logging.AppMetrics.totalCount=80 | ||
| 11 | Ord.Logging.AppMetrics.totalTime=83 | ||
| 12 | Ord.Logging.DebugInfo.file=64 | ||
| 13 | Ord.Logging.DebugInfo.line=65 | ||
| 14 | Ord.Logging.DebugInfo.thid=66 | ||
| 15 | Ord.Logging.MessageBase.data=68 | ||
| 16 | Ord.Logging.MessageBase.date=65 | ||
| 17 | Ord.Logging.MessageBase.debug=69 | ||
| 18 | Ord.Logging.MessageBase.info=67 | ||
| 19 | Ord.Logging.MessageBase.source=66 | ||
| 20 | Ord.Logging.MessageBase.type=64 | ||
| 21 | Ord.Logging.Metric.metricType=64 | ||
| 22 | Ord.Logging.Metric.name=65 | ||
| 23 | Ord.Logging.MetricMsg.duration=81 | ||
| 24 | Ord.Logging.MetricMsg.metrics=82 | ||
| 25 | Ord.Logging.MetricMsg.start=80 | ||
| 26 | Ord.Logging.PegCount.value=80 | ||
| 27 | Ord.Logging.TaskReport.duration=114 | ||
| 28 | Ord.Logging.TaskReport.start=113 | ||
| 29 | Ord.Logging.TaskReport.result=115 | ||
| 30 | Ord.Logging.TaskReport.taskid=112 | ||
| 31 | Ord.Logging.TraceMsg.level=96 | ||
| 32 | Ord.Logging.TransactionMsg.acctid=82 | ||
| 33 | Ord.Logging.TransactionMsg.appid=84 | ||
| 34 | Ord.Logging.TransactionMsg.devid=83 | ||
| 35 | Ord.Logging.TransactionMsg.etid=81 | ||
| 36 | Ord.Logging.TransactionMsg.tid=80 | ||
| 37 | Ord.Logging.UsageMsg.uri=96 | ||
| 38 | Ord.Tensor.Command.argument=66 | ||
| 39 | Ord.Tensor.Command.etid=65 | ||
| 40 | Ord.Tensor.Command.name=64 | ||
| 41 | Ord.Tensor.CommandApi.Execute.Input.commands=64 | ||
| 42 | Ord.Tensor.CommandApi.Execute.Input.wantresponses=65 | ||
| 43 | Ord.Tensor.CommandApi.Execute.Output.lastcommand=64 | ||
| 44 | Ord.Tensor.CommandApi.Execute.Output.lastresult=65 | ||
| 45 | Ord.Tensor.CommandApi.Execute.Output.responses=66 | ||
| 46 | Ord.Tensor.CommandResponse.etid=65 | ||
| 47 | Ord.Tensor.CommandResponse.name=64 | ||
| 48 | Ord.Tensor.CommandResponse.output=67 | ||
| 49 | Ord.Tensor.CommandResponse.result=66 | ||
| 50 | Ord.Tensor.InputBase.devid=64 | ||
| 51 | Ord.Tensor.InputBase.directive=66 | ||
| 52 | Ord.Tensor.InputBase.etid=65 | ||
| 53 | Ord.Tensor.NameValue.name=64 | ||
| 54 | Ord.Tensor.NameValue.value=65 | ||
| 55 | Ord.Tensor.OutputBase.devid=64 | ||
| 56 | Ord.Tensor.OutputBase.errinfo=67 | ||
| 57 | Ord.Tensor.OutputBase.etid=65 | ||
| 58 | Ord.Tensor.OutputBase.resultcode=66 | ||
| 59 | Ord.Tensor.VoidType.reserved=64 | ||
| 60 | SID.Tensor.CommandApi.Execute.Input=256 | ||
| 61 | SID.Tensor.CommandApi.Execute.Output=257 | ||
| 62 | Size.Logging.ActionMsg=-1 | ||
| 63 | Size.Logging.AppMetrics=-1 | ||
| 64 | Size.Logging.DebugInfo=-1 | ||
| 65 | Size.Logging.MessageBase=-1 | ||
| 66 | Size.Logging.Metric=-1 | ||
| 67 | Size.Logging.MetricMsg=-1 | ||
| 68 | Size.Logging.PegCount=-1 | ||
| 69 | Size.Logging.TaskReport=-1 | ||
| 70 | Size.Logging.TraceMsg=-1 | ||
| 71 | Size.Logging.TransactionMsg=-1 | ||
| 72 | Size.Logging.UsageMsg=-1 | ||
| 73 | Size.Tensor.Command=-1 | ||
| 74 | Size.Tensor.CommandApi.Execute.Input=-1 | ||
| 75 | Size.Tensor.CommandApi.Execute.Output=-1 | ||
| 76 | Size.Tensor.CommandResponse=-1 | ||
| 77 | Size.Tensor.InputBase=-1 | ||
| 78 | Size.Tensor.NameValue=-1 | ||
| 79 | Size.Tensor.OutputBase=-1 | ||
| 80 | Size.Tensor.VoidType=-1 |
-
Please register or sign in to post a comment