Overview
This chapter provides the XML schemas which Zebra Scanner WMI interfaces use to communicate with an RSM-ready scanner.
GetAllAttributes
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="attrib_list">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="attribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:unsignedShort">
<xs:attribute name="name" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
GetAttributes
Schema for AttNumberList
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="attrib_list" type="xs:string" />
</xs:schema>
Schema for AttValueList
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="attrib_list">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="attribute">
<xs:complexType>
<xs:sequence>
<xs:element name="id" type="xs:unsignedShort" />
<xs:element name="name" />
<xs:element name="datatype" type="xs:string" />
<xs:element name="permission" type="xs:string" />
<xs:element name="value" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
SetAttributes and StoreAttributes
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="attrib_list">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="attribute">
<xs:complexType>
<xs:sequence>
<xs:element name="id" type="xs:unsignedByte" />
<xs:element name="datatype" type="xs:string" />
<xs:element name="value" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
GetDeviceTopology
<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="device">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="device">
<xs:complexType>
<xs:sequence>
<xs:element name="host_mode" type="xs:string" />
<xs:element name="scannerID" type="xs:positiveInteger" />
<xs:element name="port" />
<xs:element name="baud" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="VID" type="xs:unsignedShort" />
<xs:element name="PID" type="xs:unsignedShort" />
<xs:element name="DoM" type="xs:string" />
<xs:element name="firmware" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="device">
<xs:complexType>
<xs:sequence>
<xs:element name="host_mode" type="xs:string" />
<xs:element name="scannerID" type="xs:positiveInteger" />
<xs:element name="port" />
<xs:element name="baud" />
<xs:element name="GUID" />
<xs:element name="VID" />
<xs:element name="PID" />
<xs:element name="DoM" type="xs:string" />
<xs:element name="firmware" type="xs:string" />
</xs:sequence>
<xs:attribute name="model" type="xs:string" use="required" />
<xs:attribute name="serial_num" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="model" type="xs:string" use="required" />
<xs:attribute name="serial_num" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
SymbScnrFirmwareUpdateEvent
Session Start
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="sess_start">
<xs:complexType>
<xs:sequence>
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="maxcount" type="xs:unsignedShort" />
<xs:element name="status" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Download Start
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="dl_start">
<xs:complexType>
<xs:sequence>
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="software_component" type="xs:unsignedByte" />
<xs:element name="status" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Download Progress
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="dl_progress">
<xs:complexType>
<xs:sequence>
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="software_component" type="xs:unsignedByte" />
<xs:element name="progress" type="xs:unsignedByte" />
<xs:element name="status" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Session End
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="sess_end">
<xs:complexType>
<xs:sequence>
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="status" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Download End
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="dl_end">
<xs:complexType>
<xs:sequence>
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="software_component" type="xs:unsignedByte" />
<xs:element name="size" type="xs:unsignedByte" />
<xs:element name="status" type="xs:unsignedByte" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Error
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="sess_info">
<xs:complexType>
<xs:sequence>
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="status" type="xs:unsignedShort" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
SymbScnrDiscoveryEvent
Corded Scanner
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="scanners">
<xs:complexType>
<xs:sequence>
<xs:element name="scanner">
<xs:complexType>
<xs:sequence>
<xs:element name="scannerID" type="xs:unsignedByte" />
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Cordless Scanner
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="scanners">
<xs:complexType>
<xs:sequence>
<xs:element name="scanner">
<xs:complexType>
<xs:sequence>
<xs:element name="scannerID" type="xs:unsignedByte" />
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:string" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="pnp" type="xs:unsignedByte" />
<xs:element name="scanner">
<xs:complexType>
<xs:sequence>
<xs:element name="scannerID" type="xs:unsignedByte" />
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" />
<xs:element name="pnp" type="xs:unsignedByte" />
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="scanners">
<xs:complexType>
<xs:sequence>
<xs:element name="scanner">
<xs:complexType>
<xs:sequence>
<xs:element name="scannerID" type="xs:unsignedByte" />
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" type="xs:string" />
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="scanners">
<xs:complexType>
<xs:sequence>
<xs:element name="scanner">
<xs:complexType>
<xs:sequence>
<xs:element name="scannerID" type="xs:unsignedByte" />
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:string" />
<xs:element name="GUID" type="xs:string" />
<xs:element name="pnp" type="xs:unsignedByte" />
<xs:element name="scanner">
<xs:complexType>
<xs:sequence>
<xs:element name="scannerID" type="xs:unsignedByte" />
<xs:element name="modelnumber" type="xs:string" />
<xs:element name="serialnumber" type="xs:unsignedLong" />
<xs:element name="GUID" />
<xs:element name="pnp" type="xs:unsignedByte" />
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>