LXI Instrument Identification Schema

The LXI Identification schema represents LXI device identity information, and identity information for devices that are connected to an LXI device.

This schema specifies the XML namespace:

http://www.lxistandard.org/InstrumentIdentification/2.0, version: 2.0
Editorial date: August 29, 2023

LXIDevice

The LXI Device element is the root element of the LXI Identification Schema and contains all the elements that identify this LXI device.

The LXIDevice complex type has no attributes

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Manufacturerxs:string Required Manufacturer description, should match the manufacturer field in IEEE 488.2 identity query. "Manufacturer" field Per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
Modelxs:string Required Instrument model designation, should match the model field in IEEE 488.2 identity query. "Model" field per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
SerialNumberxs:string Required Instrument serial number, should match the serial number field in IEEE 488.2 identity query. "Serial Number" field per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
FirmwareRevisionxs:string Required Instrument firmware revision, should match the firmware revision field in IEEE 488.2 identity query. "Firmware and/or Software Revision" field per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
ManufacturerDescriptionxs:string Optional This is the manufacturers product description such as "Acme 1234A Digital Foozywachit".
HomepageURLxs:anyURI Optional This is the URL of the instrument Manufacturer.
DriverURLxs:anyURI Optional unbounded This is the URL where users can go to acquire the latest driver
ConnectedDeviceslxi:ConnectedDevices Optional This optional element is used by gateways to advertise information for connected devices, such as GPIB, VXI, USB, PXI, and/or Serial instruments. Per LXI Standard 1.6, 10.2.4 RULE - Connected Device URLs
UserDescriptionxs:string Optional This is a user description for this device, for instance "the Spectrum Analyzer on the Blue Portable Cart". "Description" field per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
IdentificationURLxs:anyURI Optional This is the URL from which the instrument will source this identification XML. Per LXI Standard 1.6, 10.2 RULE - XML Identification Document URL.
Interfacelxi:NetworkInformation Optional unbounded

Interface Information.

RULE: At least one Interface of type "NetworkInformation" must be provided, with an InterfaceType of "LXI".

IVISoftwareModuleNamelxi:IVISoftwareModuleName Optional unbounded This identifies the IVI driver as specified in the IVI Configuration Store Name field of the Software Module. See Section 2.5.3 IVI Session and IVI Driver Session, in IVI-3.5: Configuration Server Specification. The Comment annotation is used to describe this software module, especially where the driver supports multiple software modules, that is, instrument personalities.
Subinstrumentslxi:Subinstruments Optional

Subinstruments contains identification and connection information for subinstruments that are addressable within this LXI device. A subinstrument is distinct functionality with its own control capability that resides within an LXI device at a given IP address.

Subinstruments permits the client to discover:

  • the subinstruments within an LXI Device
  • identification information about each subinstrument
  • control channels available for the subinstrument via the network

Devices that implement subinstruments should populate the Subinstrument for each contained subinstrument. Devices that do not implement subinstruments should omit the Subinstruments element.

Extensionlxi:Extension Optional Extension contains vendor specific information used to describe the instrument.
LXIClass Optional

Deprecated in LXI version 1.4. This element indicates if this device is Class A, B, or C.

Subsequent to LXI version 1.4, the notion of LXI classes was replaced with individual extended functions that devices may comply with. Devices use the LXIDevice/LXIExtendedFunctions elements to indicate the extended functions they comply with.

Domainxs:unsignedByte Optional

The LXI domain(s) this instrument uses for LXI Event Messages. Per LXI Event Messaging Extended Function, Standard 1.0, 3.3.2.1 RULE - Use of LXI Domain.

RULE: Devices that implement LXI Event Messaging shall include this element in the LXI Instrument Identification response.

LXIVersionxs:string Required Indicates the latest version of the LXI specification this device conforms with.
LXIExtendedFunctionslxi:LXIExtendedFunctions Optional LXI Extended functions used to describe extended capabilities of the instrument.

ConnectedDevices

ConnectedDevices contains a list of connected devices, that is, devices that are connected through the primary LXI device.

RULE: Devices that support connected devices (e.g., bridges) shall provide base URLs for all connected devices in the ConnectedDevices element of the identification document. A base URL is defined as a URL with a “url-path” that clearly identifies the connected device and one onto which a suffix path may be added to access properties of that connected device. The base URL allows clients to enumerate devices connected to the bridge device.

For example, the base URL for a connected device might be "http://hostname/device0" while another connected device might have a base URL of "http://hostname/device5". The format and path naming conventions for these connected device base URLs are left up to the vendor.

The following is an example snippet from an identification document with connected device DeviceURI elements: http://10.1.2.60/devices/LogicalAddress/0/ http://10.1.2.60/devices/LogicalAddress/1/

The ConnectedDevices complex type has no attributes

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
DeviceURIxs:anyURI Optional unbounded

URIs for connected devices represent the base URL for the connected device.

RULE: Devices that support connected devices shall provide identification documents that can be queried via a GET on <baseURL>/lxi/identification that conform to the LXI XSD Schema or one derived from that Schema according to the rules of XSD inheritance. The <baseURL> values may be found in DeviceURI elements of the ConnectedDevice element of the root element of the identification document of Rule 10.2. This rule coupled with Rule 10.2.4 allows clients to enumerate (discover) and identify all connected devices.

RULE: The xsi:schemaLocation attribute of the root element of the identification document shall contain an entry for the LXI XSD namespace with an accompanying absolute URI on the instrument that shall return the actual XSD schema document from the instrument (https://www.w3.org/standards/xml/schema). The W3C XSD Schema itself does not need to be available via a URI on the instrument


NetworkInformation

The network information element has general information regarding a network device.

Separate NetworkInformation elements are required to represent IPv4 and IPv6 addresses. When representing IPv6 addresses, devices should:

Devices may omit the InstrumentAddressString, or include a single exemplary instance.

Devices may also implement the LXI Device Specific Configuration GET API to more clearly advertise its IPv6 address.

Attributes

AttributeSyntaxLCIDescription
InterfaceType
Type:xs:string
Card.:Req.
Default:NA
NA For LXI devices, this field must contain LXI. This may be used to designate other vendor specified interfaces (e.g., PXI, GPIB, Serial, USB, etc.).

Required: RULE:

Unsecure impact: NA

InterfaceName
Type:xs:string
Card.: Opt.
Default:None
NA This field should contain a logical name for the interface, from the device's perspective. For example, network interfaces may be named "eth0", "eth1", etc.

Required: Optional

Unsecure impact: NA

IPType
Type:restriction of: xs:string
Card.: Opt.
Default:None
NA Identifies the IP implementation as either IPv4 or IPv6.

Required: Optional

Unsecure impact: NA

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
InstrumentAddressStringxs:string Optional unbounded InstrumentAddressString is a VISA-like string to help a driver or a human determine the actual address string. Consistent with the web presentation of an IVI I/O Resource Descriptor string, per LXI Standard 1.6, 9.2.1 RULE - Instrument Address String on Welcome Page.
Hostnamexs:string Optional This is the hostname used for the DNS "Hostname" field. Per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
IPAddressxs:string Optional unbounded This is the currently active IP address. This is represented as a string and can represent IPv4 or IPv6 addresses. "TCP/IP Address" field per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
SubnetMaskxs:string Optional The currently configured subnet mask. "Subnet mask" field per LXI Standard 1.6, 9.5 RULE - LAN Configuration Web Page Contents.
MACAddressxs:string Optional This is the MAC address of this interface. "MAC Address" field per LXI Standard 1.6, 9.2 RULE - Welcome Web Page Display Items.
Gatewayxs:string Optional The IP address of the currently configured gateway. "Default Gateway" field per LXI Standard 1.6, 9.5 RULE - LAN Configuration Web Page Contents.
DHCPEnabledxs:boolean Optional Indicates if the instrument is configured to accept configuration from DHCP, per LXI Standard 1.6, 8.6.1 RULE - Options for LAN configuration.
AutoIPEnabledxs:boolean Optional Indicates if the instrument is configured to use AutoIP to choose an IP address, per LXI Standard 1.6, 8.6.1 RULE - Options for LAN configuration.

IVISoftwareModuleName

IVISoftwareModuleName contains the name of an IVI Software Module.

IVISoftwareModuleName is based on: xs:string

Attributes

AttributeSyntaxLCIDescription
Comment
Type:xs:string
Card.: Opt.
Default:None
NA

Contains comments regarding the IVI Software Module.

Deprecated: The LXI consortium discourages developers from using this attribute because some tools are unable to parse this construct and it is not essential to describe the instrument or its IVI Software Module.

Required: Optional

Unsecure impact: NA

Extension

Permits vendor dependent functions.

The Extension element contains a sequence of arbitrary elements.

The Extension complex type has no attributes

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Any elementAny type Required

LXIExtendedFunctions

The LXIExtendedFunctions type contains a list of the extended functions implemented by this device.

The LXIExtendedFunctions complex type has no attributes

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Function Optional unbounded

Indicates that an LXI extended function is available, the version of the extended function implemented, and the options associated with it.

The Function element contains arbitrary elements. The various LXI Extended functions specification specify the syntax used to identify each extended function.


Subinstruments

Subinstruments contains identification and connection information for subinstruments that are addressable within this LXI device. A subinstrument is distinct functionality with its own control capability that resides within an LXI device at a given IP address.

Subinstruments permits the client to discover:

Devices that implement subinstruments should populate the Subinstrument for each contained subinstrument. Devices that do not implement subinstruments should omit the LXIDevice/Subinstruments element.

The main (or primary) device capability is also described as one of the subinstruments in order to provide a way to indicate the control channels. However, the LXIDevice/Subinstruments/Subinstrument/Identity element is omitted for the main subinstrument since its identity information is provided directly in elements at LXIDevice/(Manufacturer|Model|SerialNumber|FirmwareRevision).

The Subinstruments complex type has no attributes

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Subinstrumentlxi:Subinstrument Required unbounded

Subinstrument contains identification and connection information for an individual subinstrument.


Subinstrument

Subinstrument contains information about an individual subinstrument. See the lxi:Subinstruments type for more information.

Attributes

AttributeSyntaxLCIDescription
Name
Type:xs:string
Card.: Opt.
Default:None
NA

Name is the friendly name of the subinstrument. It is typically displayed in tools that discover subinstruments and facilitates connecting to them.

Required: Optional

Unsecure impact: NA

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Identitylxi:SubinstrumentIdentity Optional

Identity information about this subinstrument. A given subinstrument may provide connections to various network channels. Each subinstrument and the channels by which it can be accessed are listed here.

RULE: If this subinstrument is the main instrument described in this XML file then this element shall be omitted. Note that the equivalent identification information for the main instrument can be found at LXIDevice/Manufacturer, LXIDevice/Model, LXIDevice/SerialNumber, and LXIDevice/FirmwareRevision.

RULE: If the subinstrument described is NOT the default LXI instrument then this element shall be included.

HiSLIPlxi:SubinstrumentHiSLIP Optional

Indicates the HiSLIP subaddresses that control this subinstrument. If none are available, this element is omitted.

RESTlxi:SubinstrumentREST Optional unbounded

Indicates the REST APIs that control this subinstrument. If none are available, this element is omitted.

Socketlxi:SubinstrumentSocket Optional unbounded

Indicates the sockets that control this subinstrument. If none are available, this element is omitted.

Telnetlxi:SubinstrumentTelnet Optional unbounded

Indicates the telnet ports that control this subinstrument. If none are available, this element is omitted.

VXI11lxi:SubinstrumentVXI11 Optional unbounded

Indicates the VXI channel that controls this subinstrument. If none are available, this element is omitted.


SubinstrumentIdentity

SubinstrumentIdentity contains identity information about an individual subinstrument.

The identity fields mimic the IEEE 488.2 identity query response. Where the described connection supports SCPI, the element contents should match the IEEE 488.2 *IDN? query response from that subinstument.

The SubinstrumentIdentity complex type has no attributes

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Manufacturer2xs:string Required

Manufacturer2 indicates the manufacturer of this subinstrument

Manufacturer2 should match the manufacturer field in IEEE 488.2 identity query for this subinstrument.

Model2xs:string Required

Model2 indicates the model of this subinstrument

Model2 should match the model field in IEEE 488.2 identity query for this subinstrument.

SerialNumber2xs:string Optional

SerialNumber2 indicates the serial number of this subinstrument.

SerialNumber2 should match the serial number field in IEEE 488.2 identity query for this subinstrument.

If the described subinstrument's serial number is not distinct from the main instrument's serial number, then this field is omitted.

FirmwareRevision2xs:string Required

FirmwareRevision2 indcates the firmware version of this subinstrument.

FirmwareRevision2 should match the version field in IEEE 488.2 identity query for this subinstrument.


SubinstrumentHiSLIP

SubinstrumentHiSLIP contains information about this HiSLIP subinstrument.

Attributes

AttributeSyntaxLCIDescription
Port
Type:xs:integer
Card.: Opt.
Default:None
NA

Port is the TCPIP port of this HiSLIP server. The default is the IANA assigned port which is 4880.

Required: Optional

Unsecure impact: NA

Sub-elements

The following must occur in this order:

ElementTypeCardinalityRequirements
Subaddressxs:string Required unbounded

Subaddress of this HiSLIP server. If multiple subaddresses are specified, each refers to the same subinstrument.

RULE: If the HiSLIP element is included, there shall be at least 1 subaddress.


SubinstrumentREST

SubinstrumentREST indicates that a REST API at the designated port may be used to control the subinstrument.

Attributes

AttributeSyntaxLCIDescription
Port
Type:xs:integer
Card.:Req.
Default:NA
NA

Port is the TCPIP port of a REST API that can be used to control the device.

Required: RULE:

Unsecure impact: NA

RootURL
Type:xs:string
Card.:Req.
Default:NA
NA

RootURL is the root URL of the REST API that can be used to control the device. RootURL is relative to the IP Address in the LXIDevice/Interface/IPAddress.

For instance if the LXIDevice/Interface/IPAddress is 192.168.0.1 and the RootURL attribute is api/rest, then the API is at h ttps://192.168.0.1/api/rest.

Required: RULE:

Unsecure impact: NA


The SubinstrumentREST complex type has no subelements


SubinstrumentSocket

SubinstrumentSocket indicates that a socket connection at the designated port may be used to control the subinstrument.

Attributes

AttributeSyntaxLCIDescription
Port
Type:xs:integer
Card.:Req.
Default:NA
NA

Port is the TCPIP port of a server that can be used to control the device.

Required: RULE:

Unsecure impact: NA

Protocol
Type:xs:string
Card.: Opt.
Default:None
NA

Protocol is the protocol the device accepts over the designated socket. The string used to designate the protocol is device specific.

Required: Optional

Unsecure impact: NA


The SubinstrumentSocket complex type has no subelements


SubinstrumentTelnet

SubinstrumentTelnet indicates that a telnet connection at the designated port may be used to control the subinstrument.

Attributes

AttributeSyntaxLCIDescription
Port
Type:xs:integer
Card.:Req.
Default:NA
NA

Port is the TCPIP port of a telnet server that can be used to control the device.

Required: RULE:

Unsecure impact: NA

Protocol
Type:xs:string
Card.: Opt.
Default:None
NA

Protocol is the protocol the device accepts over the designated telnet connection. The string used to designate the protocol is device specific.

Required: Optional

Unsecure impact: NA


The SubinstrumentTelnet complex type has no subelements


SubinstrumentVXI11

VXI-11 Device name associated with this subinstrument.

Attributes

AttributeSyntaxLCIDescription
Device
Type:xs:string
Card.: Opt.
Default:None
NA

VXI-11 device name of this server. If absent, indicates inst0.

Required: Optional

Unsecure impact: NA


The SubinstrumentVXI11 complex type has no subelements