Table Of Contents
Monitoring APIs
MaxErrorModifiedTime
MaxStreamModifiedTime
StreamHistory
TrickModeHistory
PlayServerHistory
Errors
Devices
ServiceGroups
ContentState
Version
Monitoring APIs
This chapter describes the format and content of the Monitoring API messages. The Monitoring API messages consist of the following:
•
MaxErrorModifiedTime
•
MaxStreamModifiedTime
•
TrickModeHistory
•
PlayServerHistory
•
Errors
•
Devices
•
ServiceGroups
•
ContentState
•
Version
Note
Devices, Applications, ServiceGroups, ContentState, and Version response messages are not time-sensitive and always return the current state of the requested information.
All HTTP request messages for the Monitoring APIs follow the HTTP GET format. All response messages for the Monitoring APIs return an XML document.
MaxErrorModifiedTime
The MaxErrorModifiedTime request-response message returns the timestamp of the latest error in the database.
Request
Required: MaxErrorModifiedTime
Request Example
http://172.22.98.90/everstream/api.php?messageType=MaxErrorModifiedTime
Response
One of the following HTTP status codes is returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The MaxErrorModifiedTimeResponse element is returned in the XML body response.
Table 2-1 describes the XML body elements and attributes returned in the MaxErrorModifiedTimeResponse element.
Table 2-1 MaxErrorModifiedTimeResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
MaxErrorModifiedTime
|
—
|
list element
|
Element that contains the information.
|
maxTime
|
xs:integer
|
The latest time (since start of UNIX epoch time) that an error occurred in the database.1
|
curTime
|
xs:integer
|
The current time on the CDSM (since the start of UNIX epoch time).1
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
<MaxErrorModifiedTimeResponse
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/MaxErrorModifiedTime.xsd">
<MaxErrorModifiedTime maxTime="1233884342" curTime="1233884888" />
</MaxErrorModifiedTimeResponse>
MaxStreamModifiedTime
The MaxStreamModifiedTime request-response message returns the timestamp of the latest stream that was modified in the database.
Request
Required: MaxStreamModifiedTime
Request Example
http://172.22.98.90/everstream/api.php?messageType=MaxStreamModifiedTime
Response
One of the following HTTP status codes is returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The MaxStreamModifiedTimeResponse element is returned in the XML body response.
Table 2-2 describes the XML body elements and attributes returned in the MaxStreamModifiedTimeResponse element.
Table 2-2 MaxStreamModifiedTimeResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
MaxStreamModifiedTime
|
—
|
list element
|
Element that contains the information.
|
maxTime
|
xs:integer
|
The latest time (since start of UNIX epoch time) that a stream was modified in the database.1
|
curTime
|
xs:integer
|
The current time on the CDSM (since the start of UNIX epoch time).1
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
<MaxStreamModifiedTimeResponse
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/MaxStreamModifiedTime.xsd">
<MaxStreamModifiedTime maxTime="1233884552" curTime="1233884873" />
</MaxStreamModifiedTimeResponse>
StreamHistory
The StreamHistory request-response message returns a list of streams that were served during the specified period of time.
Note
We recommend using the Errors API call in association with the StreamHistory API call in order to view any error records pertaining to the session ID.
Request
Required: StreamHistory
Required: fromDate
Required: toDate
The length of time between fromDate and toDate must not exceed one hour. The request example uses the maxRows, fromOffset, and dateFormat optional parameters.
Request Example
http://172.22.98.90/everstream/api.php?messageType=StreamHistory&fromDate=1233856800&toDat
e=1233860399&maxRows=1000000&fromOffset=0&dateFormat=sec
Response
One of the following HTTP status codes are returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The StreamsResponse element is returned in the XML body response.
Table 2-3 describes the XML body elements and attributes returned in the StreamsResponse element.
Table 2-3 StreamsResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
Stream
|
—
|
list element
|
Element that contains the stream information.
|
startTime
|
xs:integer
|
Stream start time (since start of UNIX epoch time).1
|
endTime
|
xs:integer
|
Stream end time (since start of UNIX epoch time).1
|
dbTime
|
xs:integer
|
Time (since start of UNIX epoch time) this stream was recorded in the database.
|
tsidOutputs
|
xs:string
|
Transport stream ID (TSID) output.
|
macAddress
|
xs:string
|
MAC address of the set-top box (STB).
|
serverIpAddress
|
xs:string
|
IP address of the Streamer.
|
serviceGroup
|
xs:integer
|
Service Group used to send the stream.
|
sessionID
|
xs:string
|
Session ID associated with this stream.
|
streamType
|
xs:string
|
Stream type (either user or sys) is used to differentiate between user-requested streams and system streams.
|
contentName
|
xs:string
|
Name of the content.
|
assetIOR
|
xs:string
|
Interoperable Object Reference (IOR) for the content.
|
bitrate
|
xs:integer
|
Rate the content is being streamed, in bits per second.
|
assetName
|
xs:string
|
Name used in the ADI metadata for a group of content objects that make up one asset.
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/Streams.xsd">
<Stream startTime="1233857400" endTime="1233857562" dbTime="1233859791" tsidOutput="0"
macAddress="EmulatedSess" serverIpAddress="" serviceGroup="22"
sessionID="EmulatedSession:192.169.200.9:14996:1233857403739" streamType="user"
contentName="content info unknown: 3857732138715670" assetIOR="" bitrate="" assetName=""/>
<Stream startTime="1233857400" endTime="1233857562" dbTime="1233859791" tsidOutput="0"
macAddress="EmulatedSess" serverIpAddress="" serviceGroup="22"
sessionID="EmulatedSession:192.169.200.9:14997:1233857403839" streamType="user"
contentName="content info unknown: 3857732138715677" assetIOR="" bitrate="" assetName=""/>
<Stream startTime="1233857400" endTime="1233859212" dbTime="1233859818" tsidOutput="0"
macAddress="EmulatedSess" serverIpAddress="" serviceGroup="22"
sessionID="EmulatedSession:192.169.200.9:15000:1233857404139" streamType="user"
contentName="ccLongHD_11.mpg"
assetIOR="IOR:010000002600000049444c3a6973612e7477632e636f6d2f41737365744d6f64756c652f4173
7365743a312e3000000001000000000000007c000000010102000e0000003137322e32322e39392e313736001a
423000000014010f004e55500000001200000000010000000049534150726f7879000000000001000000417272
6f796f417373657402000000000000000800000001000000004f4154010000001400000001313d000100010000
0000000901010000000000" bitrate="15000000" assetName="ArroyoAsset" />
TrickModeHistory
The TrickModeHistory request-response message returns a list of trick-mode actions for all sessions during the specified period of time.
Request
Required: TrickModeHistory
Required: fromDate
Required: toDate
The length of time between fromDate and toDate must not exceed one hour. The request example uses the maxRows, fromOffset, and dateFormat optional parameters.
Request Example
http://172.22.98.90/everstream/api.php?messageType=TrickModeHistory&fromDate=1235012400&to
Date=1235015999&maxRows=100000&fromOffset=0&dateFormat=sec
Response
One of the following HTTP status codes are returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The TrickModesResponse element is returned in the XML body response.
Table 2-4 describes the XML body elements and attributes returned in the TrickModesResponse.
Table 2-4 TrickModesResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
TrickMode
|
—
|
list element
|
Element that contains the trick-mode information.
|
NPT
|
xs:integer
|
The current normal play time. NPT1 starts at 0 at the start of the video, advances in real time in normal play mode, decrements in reverse mode, and is fixed when the video is paused.
|
errorText
|
xs:string
|
Information on any errors that occurred during trick play.
|
eventTime
|
xs:integer
|
Time (since start of UNIX epoch time2 ) this trick mode was recorded in the database.
|
scale
|
xs:string
|
The direction and speed of play.
|
sessionID
|
xs:string
|
Session ID associated with this stream.
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/TrickModes.xsd">
sessionID="C0A800F0DB2A::1235013676:664506::13"
sessionID="C0A800F0DB2A::1235013676:664506::13"
sessionID="C0A800F0DB2A::1235013676:664506::13"
PlayServerHistory
The PlayServerHistory request-response message returns a list of play servers for each trick-mode action for all sessions during the specified period of time.
Request
Required: PlayServerHistory
Required: fromDate
Required: toDate
The length of time between fromDate and toDate must not exceed one hour. The request example uses the maxRows, fromOffset, and dateFormat optional parameters.
Request Example
http://10.74.124.50/everstream/api.php?messageType=PlayServerHistory\&fromDate=1261026000\
&toDate=1261029599\&maxRows=1000000\&fromOffset=0\&dateFormat=sec
Response
One of the following HTTP status codes are returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The PlayServerResponse element is returned in the XML body response.
Table 2-5 describes the XML body elements and attributes returned in the PlayServerResponse.
Table 2-5 PlayServerResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
PlayServer
|
—
|
list element
|
Element that contains the trick-mode information.
|
NPT
|
xs:integer
|
The current normal play time. NPT1 starts at 0 at the start of the video, advances in real time in normal play mode, decrements in reverse mode, and is fixed when the video is paused.
|
errorText
|
xs:string
|
Information on any errors that occurred during trick play.
|
eventTime
|
xs:integer
|
Time (since start of UNIX epoch time) this trick mode was recorded in the database.2
|
playServerID
|
xs:integer
|
Play server ID associated with this trick play.
|
scale
|
xs:string
|
The direction and speed of play.
|
sessionID
|
xs:string
|
Session ID associated with this stream.
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/PlayServer.xsd">
<PlayServer NPT="0" errorText="" eventTime="1261026446" playServerID="51" scale="0"
sessionID="C0A800F0DB2A::1261026446:569384::1725" />
<PlayServer NPT="0" errorText="" eventTime="1261026447" playServerID="52" scale="1"
sessionID="C0A800F0DB2A::1261026446:569384::1725" />
<PlayServer NPT="0" errorText="" eventTime="1261026751" playServerID="51" scale="0"
sessionID="C0A800F0DB2A::1261026446:569384::1725" />
<PlayServer NPT="0" errorText="" eventTime="1261026760" playServerID="51" scale="0"
sessionID="C0A800F0DB2A::1261026761:49751::1726" />
<PlayServer NPT="0" errorText="" eventTime="1261026760" playServerID="52" scale="1"
sessionID="C0A800F0DB2A::1261026761:49751::1726" />
<PlayServer NPT="16" errorText="" eventTime="1261026760" playServerID="52" scale="1"
sessionID="C0A800F0DB2A::1261026761:49751::1726" />
<PlayServer NPT="6316" errorText="" eventTime="1261026768" playServerID="52" scale="2"
sessionID="C0A800F0DB2A::1261026761:49751::1726" />
<PlayServer NPT="0" errorText="" eventTime="1261026824" playServerID="51" scale="0"
sessionID="C0A800F0DB2A::1261026761:49751::1726" />
<PlayServer NPT="0" errorText="" eventTime="1261026833" playServerID="51" scale="0"
sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="0" errorText="" eventTime="1261026833" playServerID="52" scale="1"
sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="14" errorText="" eventTime="1261026833" playServerID="52" scale="1"
sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="83528" errorText="" eventTime="1261026918" playServerID="52" scale="4"
sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="217365" errorText="" eventTime="1261026953" playServerID="52"
scale="8" sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="296029" errorText="" eventTime="1261026964" playServerID="52"
scale="15" sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="398677" errorText="" eventTime="1261026973" playServerID="52"
scale="-15" sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="320690" errorText="" eventTime="1261026980" playServerID="52"
scale="-8" sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="0" errorText="" eventTime="1261027020" playServerID="52" scale="-8"
sessionID="C0A800F0DB2A::1261026833:382133::1727" />
<PlayServer NPT="0" errorText="" eventTime="1261027087" playServerID="51" scale="0"
sessionID="C0A800F0DB2A::1261026833:382133::1727" />
Errors
The Errors request-response message returns a list of stream errors that occurred during the specified period of time.
Request
Required: Errors
Required: fromDate
Required: toDate
The length of time between fromDate and toDate must not exceed one hour. The request example uses the maxRows, fromOffset, and dateFormat optional parameters.
Request Example
http://172.22.98.90/everstream/api.php?messageType=Errors&fromDate=1233874800&toDate=12338
78399&maxRows=1000000&fromOffset=0&dateFormat=sec
Response
One of the following HTTP status codes is returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The ErrorsResponse element is returned in the XML body response.
Table 2-6 describes the XML body elements and attributes returned in the ErrorsResponse element.
Table 2-6 ErrorsResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
Error
|
—
|
list element
|
Element that contains the error information.
|
errorCode
|
xs:integer
|
Stream error code.
|
errorText
|
xs:string
|
Stream error description.
|
errorTime
|
xs:integer
|
Time (since start of UNIX epoch time1 ) this error was recorded in the database.
|
macAddress
|
xs:string
|
MAC address of the STB.
|
serverIpAddress
|
xs:string
|
IP address of the Streamer.
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/Errors.xsd">
<Error errorCode="5005" errorText="AVS_CMPT_OUT_OF_SVC" errorTime="1233875550"
macAddress="" serverIpAddress="172.22.98.75" serviceGroup="934282940"
sourceEventID="1233875550::1::1::75::70::4044::112" sessionId="" />
<Error errorCode="5005" errorText="AVS_CMPT_OUT_OF_SVC" errorTime="1233875580"
macAddress="" serverIpAddress="172.22.98.75" serviceGroup="934282940"
sourceEventID="1233875580::1::1::75::70::4044::113" sessionId="" />
<Error errorCode="5005" errorText="AVS_CMPT_OUT_OF_SVC" errorTime="1233875610"
macAddress="" serverIpAddress="172.22.98.75" serviceGroup="934282940"
sourceEventID="1233875610::1::1::75::70::4044::114" sessionId="" />
<Error errorCode="5005" errorText="AVS_CMPT_OUT_OF_SVC" errorTime="1233875640"
macAddress="" serverIpAddress="172.22.98.75" serviceGroup="934282940"
sourceEventID="1233875640::1::1::75::70::4044::115" sessionId="" />
Devices
The Devices request-response message returns a list of the CDS devices.
Request
Required: Devices
Request Example
http://172.22.98.90/everstream/api.php?messageType=Devices
Response
One of the following HTTP status codes is returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The DevicesResponse element is returned in the XML body response.
Table 2-7 describes the XML body elements and attributes returned in the DevicesResponse element.
Table 2-7 DevicesResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
Device
|
—
|
list element
|
Element that contains the device information.
|
description
|
xs:string
|
Description of the device.
|
hostname
|
xs:string
|
Hostname of the device.
|
ipAddress
|
xs:string
|
IP address of the device.
|
type
|
xs:string
|
Device type (Streamer, Vault, or ISV).
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/Devices.xsd">
<Device description="Vault" hostname="vault216" ipAddress="172.22.98.216" type="Vault" />
<Device description="Vault" hostname="vault218" ipAddress="172.22.98.218" type="Vault" />
<Device description="Vault" hostname="vault219" ipAddress="172.22.98.219" type="Vault" />
<Device description="Streamer" hostname="stm44" ipAddress="172.22.98.44" type="Streamer" />
<Device description="Streamer" hostname="stm74" ipAddress="172.22.98.74" type="Streamer" />
<Device description="Streamer" hostname="stm75" ipAddress="172.22.98.75" type="Streamer" />
<Device description="Streamer" hostname="stm76" ipAddress="172.22.98.76" type="Streamer" />
<Device description="Streamer" hostname="stm77" ipAddress="172.22.98.77" type="Streamer" />
<Device description="Streamer" hostname="stm78" ipAddress="172.22.98.78" type="Streamer" />
<Device description="Streamer" hostname="stm79" ipAddress="172.22.98.79" type="Streamer" />
<Device description="Streamer" hostname="stm81" ipAddress="172.22.98.81" type="Streamer" />
<Device description="Streamer" hostname="stm82" ipAddress="172.22.98.82" type="Streamer" />
<Device description="Streamer" hostname="stm83" ipAddress="172.22.98.83" type="Streamer" />
ServiceGroups
The ServiceGroups request-response message returns a list of the service groups configured in the CDS.
Request
Required: ServiceGroups
Request Example
http://172.22.98.90/everstream/api.php?messageType=ServiceGroups
Response
One of the following HTTP status codes is returned:
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The ServiceGroupsResponse element is returned in the XML body response.
Table 2-8 describes the XML body elements and attributes returned in the ServiceGroupsResponse element.
Table 2-8 ServiceGroupsResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
ServiceGroup
|
—
|
list element
|
Element that contains the service group information.
|
serviceGroup
|
xs:integer
|
Service group configured in the CDS.
|
TSIDOutput
|
xs:integer
|
The associated transport stream identifier (TSID) out port on the Quadrature Amplitude Modulation (QAM) device.1
|
bandwidth
|
xs:integer
|
The bandwidth usage of this service group.1
|
EdgeDeviceIP
|
xs:string
|
The IP address of the QAM device.1
|
Response Example
The response example is for a CDS configured with Gigabit Ethernet streaming.
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/ServiceGroups.xsd">
<ServiceGroup serviceGroup="21">
<ServiceGroup serviceGroup="22">
<ServiceGroup serviceGroup="73">
ContentState
The ContentState request-response message returns a list of the content in the CDS.
Request
Required: ContentState
Request Example
http://172.22.98.90/everstream/api.php?messageType=ContentState
Response
One of the following HTTP status codes is returned.
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The ContentStateResponse element is returned in the XML body response.
Table 2-9 describes the XML body elements and attributes returned in the ContentStateResponse element.
Table 2-9 ContentStateResponse
Element
|
Attributes
|
Data Types
|
Descriptions
|
ContentState
|
—
|
list element
|
Element that contains the content information.
|
assetIOR
|
xs:string
|
Interoperable Object Reference (IOR) for the content.
|
contentName
|
xs:string
|
Name of the content.
|
dateIngested
|
xs:integer
|
The time (since start of UNIX epoch time) that the content was ingested into the CDS.1
|
digestIpAddress
|
xs:string
|
The IP address of the Vault that ingested the content.
|
filesize
|
xs:integer
|
The size, in bytes, of the content file.
|
isaAdminState
|
xs:string
|
The administrative state of this content. The possible administrative states are:
• Unprovisioned—Content is loading.
• In Service—Content is available for streaming.
• Out of Service—Content is not available for streaming.
|
isaOpState
|
xs:string
|
The operational state of this content. The possible operational states are:
• Created—Content is loading.
• In Service—Content is available for streaming.
• Out of Service—Content is not available for streaming.
|
bitrate
|
xs:integer
|
The rate of ingest in bits per second (3750000 = 3.75 Mbps).
|
assetName
|
xs:string
|
Name used in the ADI metadata for a group of content objects that make up one asset.
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../src/xsd/ContentState.xsd">
assetIOR="IOR:010000002600000049444c3a6973612e7477632e636f6d2f41737365744d6f64756c652f4173
7365743a312e3000000001000000000000007c000000010102ff0e0000003137322e32322e39392e313736001a
423000000014010f004e55500000001200000000010000000049534150726f7879000000000001000000417272
6f796f417373657402000000000000000800000001000000004f4154010000001400000001313d000100010000
0000000901010000000000" contentName="NBA_SR_MichaelvMagic1991-JPW91GB_2.mpg"
dateIngested="1233682841" digestIpAddress="172.22.98.216" filesize="1385901220"
isaAdminState="InService" isaOpState="InService" bitrate="3750000"
assetName="ArroyoAsset" />
assetIOR="IOR:010000002600000049444c3a6973612e7477632e636f6d2f41737365744d6f64756c652f4173
7365743a312e3000000001000000000000007c000000010102ff0e0000003137322e32322e39392e313736001a
423000000014010f004e55500000001200000000010000000049534150726f7879000000000001000000417272
6f796f417373657402000000000000000800000001000000004f4154010000001400000001313d000100010000
0000000901010000000000" contentName="NBA_SR_MichaelvMagic1991-JPW91GB_4.mpg"
dateIngested="1233682900" digestIpAddress="172.22.98.216" filesize="1385901220"
isaAdminState="InService" isaOpState="InService" bitrate="3750000"
assetName="ArroyoAsset" />
Version
The Version request-response message returns the version of the API running on the CDS.
Request
Required: Version
Request Example
http://172.22.98.90/everstream/api.php?messageType=Version
Response
One of the following HTTP status codes are returned.
•
200 Ok—Request was successful.
•
400 Bad Request—Request parameters were incomplete or invalid.
The APIVersionResponse element is returned in the XML body response.
Table 2-10 describes the XML body attributes returned in the APIVersionResponse.
Table 2-10 APIVersionResponse
Attributes
|
Data Types
|
Descriptions
|
major
|
xs:integer
|
The integer portion of the API version.
|
minor
|
xs:integer
|
The decimal number portion of the API version.
|
Response Example
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="..\..\src\xsd\APIVersion.xsd"/>