Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

SystemId or Sid is a unique identifier automatically assigned by TQLEngine to every newly created Model Instance. It is of type "String" and is defined as the following in TQL.

System ID Definiton
<Def name="System" inherits="Entity" documentation="Marker of all system types"/>
<Def name="SystemId" alt="sid" inherits="String,System"/>

Note: SystemId and Sid are synonyms. For the purpose of this document will use Sid when referring to System ID.

Model developers can create attribute of type SystemId or Sid.

In this example: PhidServoId is defined as Sid.

PhidServoId defined as System ID
<ThingModel Name="PhidgetServoModel" Combines="PhidgetServoFacet">
  <Sid Name="PhidServoId"/>
</ThingModel>

 

When the Model Instance is created, using Create TQL Query, System ID is automatically generated by TQLEngine.

Create Phidget Servo Thing Model Instance
<Query>
  <Create>
    <PhidgetServoModel>
      <ServoProtocolURL>
        phid://
      </ServoProtocolURL>
      <PhidgetDeviceType>
        PhidgetAdvancedServo
      </PhidgetDeviceType>
      <DeviceInterfaceIndex>
        0
      </DeviceInterfaceIndex>
      <ServoAngle>
        110
      </ServoAngle>
    </PhidgetServoModel>
  </Create>
</Query>

Using the Find TQL Query on PhidgetServoModel

Find Phidget Servo Model
<Query>
  <Find>
    <PhidgetServoModel>
      <PhidServoId ne="" />
    </PhidgetServoModel>
  </Find>
</Query>

 

Find Result is:

Find Result Phidget Servo Model
<Find Status="Success">
  <Result>
    <PhidgetServoModel>
      <PhidServoId>KNI5JYVPAAAAUAABA4ONNHF2</PhidServoId>
      <PhidgetDeviceType>PhidgetAdvancedServo</PhidgetDeviceType>
      <ServoAngle>110</ServoAngle>
      <DeviceInterfaceIndex>0</DeviceInterfaceIndex>
      <ServoProtocolURL>phid://</ServoProtocolURL>
    </PhidgetServoModel>
  </Result>
</Find>

 

Note that PhidServoId is automatically generated even though it is NOT specified at the time of Create Query

Automatically Generated System ID
<PhidServoId>KNI5JYVPAAAAUAABA4ONNHF2</PhidServoId>

About System ID:

  • Are Unique per Installation of TQLEngine: System ID Values are guaranteed to be Unique for a given Installation of TQLEngine.
  • Can neither be created or modified by user: If an attribute is defined of type Sid or SystemId, their values can neither be specified or updated by the user.
  • New Values are generated each time for same model: Each time an instance is deleted and created again new value System ID value.

 

  • No labels