Skip to main content
Tweeted twitter.com/StackDBAs/status/1145935267322322949
added 7 characters in body; edited tags
Source Link
Paul White
  • 90.3k
  • 30
  • 424
  • 663

For sentimental reasons, I'm trying to export my text messages from an old feature phone (LG Cosmos 2, circa 2011) to a flat file (CSV or the like). I was able to successfully transfer the entire contents of the phone's filesystemfile system to my computer, but the messages are locked in a database format that I do not recognize.

/DB
  /SchemaFiles
    /Handset
      inboxSchema.dat
  /SysDB
    SMSInboxDB.vol
    SMSInboxDB.vol.log
    SMSInboxDB.vol.sys
/DB
  /SchemaFiles
    /Handset
      inboxSchema.dat
  /SysDB
    SMSInboxDB.vol
    SMSInboxDB.vol.log
    SMSInboxDB.vol.sys
# SMS Inbox Schema 
schema SMSInboxSchema
VERSION 0.8//SMSIN_MSG_CHARLEN

table Inbox maxrecord = 300
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_ON,   ON;     # smsInboxIndex => Primary Key
    U, SYNC_OFF, SMSIN_INBOXID,             1101,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSIN_MSGID,               1102,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSIN_CATEGORY,            1103,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSIN_SYSTEMTIME,          1104,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSIN_MCTIME,              1105,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSIN_BINMCTIME,           1106,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSIN_READFLAG,            1107,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSIN_LOCKFLAG,            1108,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSIN_DUPLICATEFLAG,       1109,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSIN_PRIORITYFLAG,        1110,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSIN_PRIVACYFLAG,         1111,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSIN_EMSUDHPRESENT,       1112,   BYTE,       INDEX_KEY_OFF,  ON;     # smssmsEMSUdhPresent
    U, SYNC_OFF, SMSIN_MSGENCODINGTYPE,     1113,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSIN_NUMOFSEGMENTS,       1114,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfSegments
    U, SYNC_OFF, SMSIN_TITLEMESSAGE,        1115,   STRING(301),    INDEX_KEY_OFF,  ON;     # smsTitleMessage
    U, SYNC_OFF, SMSIN_NUMOFVOICEMAILS,     1116,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfVoicemails
    U, SYNC_OFF, SMSIN_EMSCTRLDATA,         1117,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSCtrlData
    U, SYNC_OFF, SMSIN_EMSCONCATREFRENCE,   1118,   INT,        INDEX_KEY_OFF,  ON;     # smsEMSConcatRefrence
    U, SYNC_OFF, SMSIN_EMSCONCATSTATUS,     1119,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSConcatStatus
    U, SYNC_OFF, SMSIN_CBADDRESS,           1120,   STRING(49), INDEX_KEY_OFF,  ON;     # smsAddress
    U, SYNC_OFF, SMSIN_CBADDRESSLEN,        1121,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRADDRESS,           1122,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSIN_FRADDRESSLEN,        1123,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRINTRIMEMAIL,       1124,   BYTE,       INDEX_KEY_OFF,  ON;     # smsIntrimEmail
    U, SYNC_OFF, SMSIN_FRNAME,              1125,   STRING(33), INDEX_KEY_OFF,  ON;     # smsName
    U, SYNC_OFF, SMSIN_FRPBMATCHICON,       1126,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPBMatchIcon
    U, SYNC_OFF, SMSIN_FRPBID,              1127,   USHORT,     INDEX_KEY_ON,   ON;     # smsPBMatchFilePos
    U, SYNC_OFF, SMSIN_SORTKEY,             1129,   STRING(49),     INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSIN_SORTTIME,            1130,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
}
multikey Inbox
{
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SYSTEMTIME;
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SORTTIME;
}

table InboxUserData maxrecord = 6000, maxviewsize = 20
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_OFF,  ON;     # smsInboxIndex
    U, SYNC_OFF, SMSIN_SEGINDEX,            1140,   BYTE,       INDEX_KEY_OFF,  ON;     # smsSegIndex
    U, SYNC_OFF, SMSIN_MSG,             1141,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsMsgLen, smsMsg
    U, SYNC_OFF, SMSIN_MSG_CHARLEN,         1142,   BYTE,       INDEX_KEY_OFF,  ON;     # userdataCharLen(before encoding)
}
multikey InboxUserData
{
    NORMALVALUE:SMSIN_INBOXINDEX, SMSIN_SEGINDEX;
}

table CMAS maxrecord = 100
{
    U, SYNC_OFF, SMSCMAS_INBOXINDEX,        1170,   USHORT,     INDEX_KEY_ON,   ON;     # SMSCMASboxIndex => Primary Key
    U, SYNC_OFF, SMSCMAS_INBOXID,           1171,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSCMAS_MSGID,         1172,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSCMAS_CATEGORY,          1173,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSCMAS_SYSTEMTIME,        1174,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSCMAS_MCTIME,            1175,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSCMAS_BINMCTIME,         1176,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSCMAS_READFLAG,          1177,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSCMAS_LOCKFLAG,          1178,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSCMAS_DUPLICATEFLAG,     1179,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSCMAS_PRIORITYFLAG,      1180,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSCMAS_PRIVACYFLAG,       1181,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSCMAS_MSGENCODINGTYPE,       1182,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSCMAS_MSG_CHAR,          1183,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsCMASMessage
    U, SYNC_OFF, SMSCMAS_MSG_CHAR_LEN,      1184,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCMASMessageLength
    U, SYNC_OFF, SMSCMAS_FRADDRESS,         1185,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSCMAS_FRADDRESSLEN,      1186,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSCMAS_SORTKEY,           1187,   STRING(49), INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSCMAS_SORTTIME,          1188,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
    U, SYNC_OFF, SMSCMAS_SRVC_CATEGORY,     1189,   USHORT,     INDEX_KEY_OFF,  ON;     # broadcast service category
    U, SYNC_OFF, SMSCMAS_CMAS_RECORD,       1190,   ULONG,      INDEX_KEY_OFF,  ON;     # CMAE Record 01 data(Category, Urgency, ...)
}
multikey CMAS
{
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SYSTEMTIME;
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SORTTIME;
}

database SMSInboxDB;
# SMS Inbox Schema 
schema SMSInboxSchema
VERSION 0.8//SMSIN_MSG_CHARLEN

table Inbox maxrecord = 300
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_ON,   ON;     # smsInboxIndex => Primary Key
    U, SYNC_OFF, SMSIN_INBOXID,             1101,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSIN_MSGID,               1102,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSIN_CATEGORY,            1103,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSIN_SYSTEMTIME,          1104,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSIN_MCTIME,              1105,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSIN_BINMCTIME,           1106,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSIN_READFLAG,            1107,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSIN_LOCKFLAG,            1108,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSIN_DUPLICATEFLAG,       1109,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSIN_PRIORITYFLAG,        1110,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSIN_PRIVACYFLAG,         1111,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSIN_EMSUDHPRESENT,       1112,   BYTE,       INDEX_KEY_OFF,  ON;     # smssmsEMSUdhPresent
    U, SYNC_OFF, SMSIN_MSGENCODINGTYPE,     1113,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSIN_NUMOFSEGMENTS,       1114,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfSegments
    U, SYNC_OFF, SMSIN_TITLEMESSAGE,        1115,   STRING(301),    INDEX_KEY_OFF,  ON;     # smsTitleMessage
    U, SYNC_OFF, SMSIN_NUMOFVOICEMAILS,     1116,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfVoicemails
    U, SYNC_OFF, SMSIN_EMSCTRLDATA,         1117,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSCtrlData
    U, SYNC_OFF, SMSIN_EMSCONCATREFRENCE,   1118,   INT,        INDEX_KEY_OFF,  ON;     # smsEMSConcatRefrence
    U, SYNC_OFF, SMSIN_EMSCONCATSTATUS,     1119,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSConcatStatus
    U, SYNC_OFF, SMSIN_CBADDRESS,           1120,   STRING(49), INDEX_KEY_OFF,  ON;     # smsAddress
    U, SYNC_OFF, SMSIN_CBADDRESSLEN,        1121,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRADDRESS,           1122,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSIN_FRADDRESSLEN,        1123,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRINTRIMEMAIL,       1124,   BYTE,       INDEX_KEY_OFF,  ON;     # smsIntrimEmail
    U, SYNC_OFF, SMSIN_FRNAME,              1125,   STRING(33), INDEX_KEY_OFF,  ON;     # smsName
    U, SYNC_OFF, SMSIN_FRPBMATCHICON,       1126,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPBMatchIcon
    U, SYNC_OFF, SMSIN_FRPBID,              1127,   USHORT,     INDEX_KEY_ON,   ON;     # smsPBMatchFilePos
    U, SYNC_OFF, SMSIN_SORTKEY,             1129,   STRING(49),     INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSIN_SORTTIME,            1130,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
}
multikey Inbox
{
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SYSTEMTIME;
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SORTTIME;
}

table InboxUserData maxrecord = 6000, maxviewsize = 20
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_OFF,  ON;     # smsInboxIndex
    U, SYNC_OFF, SMSIN_SEGINDEX,            1140,   BYTE,       INDEX_KEY_OFF,  ON;     # smsSegIndex
    U, SYNC_OFF, SMSIN_MSG,             1141,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsMsgLen, smsMsg
    U, SYNC_OFF, SMSIN_MSG_CHARLEN,         1142,   BYTE,       INDEX_KEY_OFF,  ON;     # userdataCharLen(before encoding)
}
multikey InboxUserData
{
    NORMALVALUE:SMSIN_INBOXINDEX, SMSIN_SEGINDEX;
}

table CMAS maxrecord = 100
{
    U, SYNC_OFF, SMSCMAS_INBOXINDEX,        1170,   USHORT,     INDEX_KEY_ON,   ON;     # SMSCMASboxIndex => Primary Key
    U, SYNC_OFF, SMSCMAS_INBOXID,           1171,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSCMAS_MSGID,         1172,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSCMAS_CATEGORY,          1173,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSCMAS_SYSTEMTIME,        1174,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSCMAS_MCTIME,            1175,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSCMAS_BINMCTIME,         1176,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSCMAS_READFLAG,          1177,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSCMAS_LOCKFLAG,          1178,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSCMAS_DUPLICATEFLAG,     1179,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSCMAS_PRIORITYFLAG,      1180,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSCMAS_PRIVACYFLAG,       1181,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSCMAS_MSGENCODINGTYPE,       1182,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSCMAS_MSG_CHAR,          1183,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsCMASMessage
    U, SYNC_OFF, SMSCMAS_MSG_CHAR_LEN,      1184,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCMASMessageLength
    U, SYNC_OFF, SMSCMAS_FRADDRESS,         1185,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSCMAS_FRADDRESSLEN,      1186,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSCMAS_SORTKEY,           1187,   STRING(49), INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSCMAS_SORTTIME,          1188,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
    U, SYNC_OFF, SMSCMAS_SRVC_CATEGORY,     1189,   USHORT,     INDEX_KEY_OFF,  ON;     # broadcast service category
    U, SYNC_OFF, SMSCMAS_CMAS_RECORD,       1190,   ULONG,      INDEX_KEY_OFF,  ON;     # CMAE Record 01 data(Category, Urgency, ...)
}
multikey CMAS
{
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SYSTEMTIME;
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SORTTIME;
}

database SMSInboxDB;

For sentimental reasons, I'm trying to export my text messages from an old feature phone (LG Cosmos 2, circa 2011) to a flat file (CSV or the like). I was able to successfully transfer the entire contents of the phone's filesystem to my computer, but the messages are locked in a database format that I do not recognize.

/DB
  /SchemaFiles
    /Handset
      inboxSchema.dat
  /SysDB
    SMSInboxDB.vol
    SMSInboxDB.vol.log
    SMSInboxDB.vol.sys
# SMS Inbox Schema 
schema SMSInboxSchema
VERSION 0.8//SMSIN_MSG_CHARLEN

table Inbox maxrecord = 300
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_ON,   ON;     # smsInboxIndex => Primary Key
    U, SYNC_OFF, SMSIN_INBOXID,             1101,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSIN_MSGID,               1102,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSIN_CATEGORY,            1103,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSIN_SYSTEMTIME,          1104,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSIN_MCTIME,              1105,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSIN_BINMCTIME,           1106,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSIN_READFLAG,            1107,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSIN_LOCKFLAG,            1108,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSIN_DUPLICATEFLAG,       1109,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSIN_PRIORITYFLAG,        1110,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSIN_PRIVACYFLAG,         1111,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSIN_EMSUDHPRESENT,       1112,   BYTE,       INDEX_KEY_OFF,  ON;     # smssmsEMSUdhPresent
    U, SYNC_OFF, SMSIN_MSGENCODINGTYPE,     1113,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSIN_NUMOFSEGMENTS,       1114,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfSegments
    U, SYNC_OFF, SMSIN_TITLEMESSAGE,        1115,   STRING(301),    INDEX_KEY_OFF,  ON;     # smsTitleMessage
    U, SYNC_OFF, SMSIN_NUMOFVOICEMAILS,     1116,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfVoicemails
    U, SYNC_OFF, SMSIN_EMSCTRLDATA,         1117,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSCtrlData
    U, SYNC_OFF, SMSIN_EMSCONCATREFRENCE,   1118,   INT,        INDEX_KEY_OFF,  ON;     # smsEMSConcatRefrence
    U, SYNC_OFF, SMSIN_EMSCONCATSTATUS,     1119,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSConcatStatus
    U, SYNC_OFF, SMSIN_CBADDRESS,           1120,   STRING(49), INDEX_KEY_OFF,  ON;     # smsAddress
    U, SYNC_OFF, SMSIN_CBADDRESSLEN,        1121,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRADDRESS,           1122,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSIN_FRADDRESSLEN,        1123,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRINTRIMEMAIL,       1124,   BYTE,       INDEX_KEY_OFF,  ON;     # smsIntrimEmail
    U, SYNC_OFF, SMSIN_FRNAME,              1125,   STRING(33), INDEX_KEY_OFF,  ON;     # smsName
    U, SYNC_OFF, SMSIN_FRPBMATCHICON,       1126,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPBMatchIcon
    U, SYNC_OFF, SMSIN_FRPBID,              1127,   USHORT,     INDEX_KEY_ON,   ON;     # smsPBMatchFilePos
    U, SYNC_OFF, SMSIN_SORTKEY,             1129,   STRING(49),     INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSIN_SORTTIME,            1130,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
}
multikey Inbox
{
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SYSTEMTIME;
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SORTTIME;
}

table InboxUserData maxrecord = 6000, maxviewsize = 20
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_OFF,  ON;     # smsInboxIndex
    U, SYNC_OFF, SMSIN_SEGINDEX,            1140,   BYTE,       INDEX_KEY_OFF,  ON;     # smsSegIndex
    U, SYNC_OFF, SMSIN_MSG,             1141,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsMsgLen, smsMsg
    U, SYNC_OFF, SMSIN_MSG_CHARLEN,         1142,   BYTE,       INDEX_KEY_OFF,  ON;     # userdataCharLen(before encoding)
}
multikey InboxUserData
{
    NORMALVALUE:SMSIN_INBOXINDEX, SMSIN_SEGINDEX;
}

table CMAS maxrecord = 100
{
    U, SYNC_OFF, SMSCMAS_INBOXINDEX,        1170,   USHORT,     INDEX_KEY_ON,   ON;     # SMSCMASboxIndex => Primary Key
    U, SYNC_OFF, SMSCMAS_INBOXID,           1171,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSCMAS_MSGID,         1172,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSCMAS_CATEGORY,          1173,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSCMAS_SYSTEMTIME,        1174,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSCMAS_MCTIME,            1175,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSCMAS_BINMCTIME,         1176,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSCMAS_READFLAG,          1177,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSCMAS_LOCKFLAG,          1178,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSCMAS_DUPLICATEFLAG,     1179,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSCMAS_PRIORITYFLAG,      1180,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSCMAS_PRIVACYFLAG,       1181,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSCMAS_MSGENCODINGTYPE,       1182,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSCMAS_MSG_CHAR,          1183,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsCMASMessage
    U, SYNC_OFF, SMSCMAS_MSG_CHAR_LEN,      1184,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCMASMessageLength
    U, SYNC_OFF, SMSCMAS_FRADDRESS,         1185,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSCMAS_FRADDRESSLEN,      1186,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSCMAS_SORTKEY,           1187,   STRING(49), INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSCMAS_SORTTIME,          1188,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
    U, SYNC_OFF, SMSCMAS_SRVC_CATEGORY,     1189,   USHORT,     INDEX_KEY_OFF,  ON;     # broadcast service category
    U, SYNC_OFF, SMSCMAS_CMAS_RECORD,       1190,   ULONG,      INDEX_KEY_OFF,  ON;     # CMAE Record 01 data(Category, Urgency, ...)
}
multikey CMAS
{
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SYSTEMTIME;
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SORTTIME;
}

database SMSInboxDB;

For sentimental reasons, I'm trying to export my text messages from an old feature phone (LG Cosmos 2, circa 2011) to a flat file (CSV or the like). I was able to successfully transfer the entire contents of the phone's file system to my computer, but the messages are locked in a database format that I do not recognize.

/DB
  /SchemaFiles
    /Handset
      inboxSchema.dat
  /SysDB
    SMSInboxDB.vol
    SMSInboxDB.vol.log
    SMSInboxDB.vol.sys
# SMS Inbox Schema 
schema SMSInboxSchema
VERSION 0.8//SMSIN_MSG_CHARLEN

table Inbox maxrecord = 300
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_ON,   ON;     # smsInboxIndex => Primary Key
    U, SYNC_OFF, SMSIN_INBOXID,             1101,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSIN_MSGID,               1102,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSIN_CATEGORY,            1103,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSIN_SYSTEMTIME,          1104,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSIN_MCTIME,              1105,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSIN_BINMCTIME,           1106,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSIN_READFLAG,            1107,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSIN_LOCKFLAG,            1108,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSIN_DUPLICATEFLAG,       1109,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSIN_PRIORITYFLAG,        1110,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSIN_PRIVACYFLAG,         1111,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSIN_EMSUDHPRESENT,       1112,   BYTE,       INDEX_KEY_OFF,  ON;     # smssmsEMSUdhPresent
    U, SYNC_OFF, SMSIN_MSGENCODINGTYPE,     1113,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSIN_NUMOFSEGMENTS,       1114,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfSegments
    U, SYNC_OFF, SMSIN_TITLEMESSAGE,        1115,   STRING(301),    INDEX_KEY_OFF,  ON;     # smsTitleMessage
    U, SYNC_OFF, SMSIN_NUMOFVOICEMAILS,     1116,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfVoicemails
    U, SYNC_OFF, SMSIN_EMSCTRLDATA,         1117,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSCtrlData
    U, SYNC_OFF, SMSIN_EMSCONCATREFRENCE,   1118,   INT,        INDEX_KEY_OFF,  ON;     # smsEMSConcatRefrence
    U, SYNC_OFF, SMSIN_EMSCONCATSTATUS,     1119,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSConcatStatus
    U, SYNC_OFF, SMSIN_CBADDRESS,           1120,   STRING(49), INDEX_KEY_OFF,  ON;     # smsAddress
    U, SYNC_OFF, SMSIN_CBADDRESSLEN,        1121,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRADDRESS,           1122,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSIN_FRADDRESSLEN,        1123,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRINTRIMEMAIL,       1124,   BYTE,       INDEX_KEY_OFF,  ON;     # smsIntrimEmail
    U, SYNC_OFF, SMSIN_FRNAME,              1125,   STRING(33), INDEX_KEY_OFF,  ON;     # smsName
    U, SYNC_OFF, SMSIN_FRPBMATCHICON,       1126,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPBMatchIcon
    U, SYNC_OFF, SMSIN_FRPBID,              1127,   USHORT,     INDEX_KEY_ON,   ON;     # smsPBMatchFilePos
    U, SYNC_OFF, SMSIN_SORTKEY,             1129,   STRING(49),     INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSIN_SORTTIME,            1130,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
}
multikey Inbox
{
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SYSTEMTIME;
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SORTTIME;
}

table InboxUserData maxrecord = 6000, maxviewsize = 20
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_OFF,  ON;     # smsInboxIndex
    U, SYNC_OFF, SMSIN_SEGINDEX,            1140,   BYTE,       INDEX_KEY_OFF,  ON;     # smsSegIndex
    U, SYNC_OFF, SMSIN_MSG,             1141,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsMsgLen, smsMsg
    U, SYNC_OFF, SMSIN_MSG_CHARLEN,         1142,   BYTE,       INDEX_KEY_OFF,  ON;     # userdataCharLen(before encoding)
}
multikey InboxUserData
{
    NORMALVALUE:SMSIN_INBOXINDEX, SMSIN_SEGINDEX;
}

table CMAS maxrecord = 100
{
    U, SYNC_OFF, SMSCMAS_INBOXINDEX,        1170,   USHORT,     INDEX_KEY_ON,   ON;     # SMSCMASboxIndex => Primary Key
    U, SYNC_OFF, SMSCMAS_INBOXID,           1171,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSCMAS_MSGID,         1172,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSCMAS_CATEGORY,          1173,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSCMAS_SYSTEMTIME,        1174,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSCMAS_MCTIME,            1175,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSCMAS_BINMCTIME,         1176,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSCMAS_READFLAG,          1177,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSCMAS_LOCKFLAG,          1178,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSCMAS_DUPLICATEFLAG,     1179,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSCMAS_PRIORITYFLAG,      1180,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSCMAS_PRIVACYFLAG,       1181,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSCMAS_MSGENCODINGTYPE,       1182,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSCMAS_MSG_CHAR,          1183,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsCMASMessage
    U, SYNC_OFF, SMSCMAS_MSG_CHAR_LEN,      1184,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCMASMessageLength
    U, SYNC_OFF, SMSCMAS_FRADDRESS,         1185,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSCMAS_FRADDRESSLEN,      1186,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSCMAS_SORTKEY,           1187,   STRING(49), INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSCMAS_SORTTIME,          1188,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
    U, SYNC_OFF, SMSCMAS_SRVC_CATEGORY,     1189,   USHORT,     INDEX_KEY_OFF,  ON;     # broadcast service category
    U, SYNC_OFF, SMSCMAS_CMAS_RECORD,       1190,   ULONG,      INDEX_KEY_OFF,  ON;     # CMAE Record 01 data(Category, Urgency, ...)
}
multikey CMAS
{
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SYSTEMTIME;
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SORTTIME;
}

database SMSInboxDB;
Source Link
alexw
  • 192
  • 6

What kind of database is this schema for, and how can I open it?

For sentimental reasons, I'm trying to export my text messages from an old feature phone (LG Cosmos 2, circa 2011) to a flat file (CSV or the like). I was able to successfully transfer the entire contents of the phone's filesystem to my computer, but the messages are locked in a database format that I do not recognize.

I believe the relevant directories and files are as follows:

/DB
  /SchemaFiles
    /Handset
      inboxSchema.dat
  /SysDB
    SMSInboxDB.vol
    SMSInboxDB.vol.log
    SMSInboxDB.vol.sys

I believe the files in SysDB are the actual database volume files, and cannot be interpreted as plain text. However, the inboxSchema.dat file can be read as plain text, and contains the following:

# SMS Inbox Schema 
schema SMSInboxSchema
VERSION 0.8//SMSIN_MSG_CHARLEN

table Inbox maxrecord = 300
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_ON,   ON;     # smsInboxIndex => Primary Key
    U, SYNC_OFF, SMSIN_INBOXID,             1101,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSIN_MSGID,               1102,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSIN_CATEGORY,            1103,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSIN_SYSTEMTIME,          1104,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSIN_MCTIME,              1105,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSIN_BINMCTIME,           1106,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSIN_READFLAG,            1107,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSIN_LOCKFLAG,            1108,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSIN_DUPLICATEFLAG,       1109,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSIN_PRIORITYFLAG,        1110,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSIN_PRIVACYFLAG,         1111,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSIN_EMSUDHPRESENT,       1112,   BYTE,       INDEX_KEY_OFF,  ON;     # smssmsEMSUdhPresent
    U, SYNC_OFF, SMSIN_MSGENCODINGTYPE,     1113,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSIN_NUMOFSEGMENTS,       1114,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfSegments
    U, SYNC_OFF, SMSIN_TITLEMESSAGE,        1115,   STRING(301),    INDEX_KEY_OFF,  ON;     # smsTitleMessage
    U, SYNC_OFF, SMSIN_NUMOFVOICEMAILS,     1116,   BYTE,       INDEX_KEY_OFF,  ON;     # smsNumOfVoicemails
    U, SYNC_OFF, SMSIN_EMSCTRLDATA,         1117,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSCtrlData
    U, SYNC_OFF, SMSIN_EMSCONCATREFRENCE,   1118,   INT,        INDEX_KEY_OFF,  ON;     # smsEMSConcatRefrence
    U, SYNC_OFF, SMSIN_EMSCONCATSTATUS,     1119,   BYTE,       INDEX_KEY_OFF,  ON;     # smsEMSConcatStatus
    U, SYNC_OFF, SMSIN_CBADDRESS,           1120,   STRING(49), INDEX_KEY_OFF,  ON;     # smsAddress
    U, SYNC_OFF, SMSIN_CBADDRESSLEN,        1121,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRADDRESS,           1122,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSIN_FRADDRESSLEN,        1123,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSIN_FRINTRIMEMAIL,       1124,   BYTE,       INDEX_KEY_OFF,  ON;     # smsIntrimEmail
    U, SYNC_OFF, SMSIN_FRNAME,              1125,   STRING(33), INDEX_KEY_OFF,  ON;     # smsName
    U, SYNC_OFF, SMSIN_FRPBMATCHICON,       1126,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPBMatchIcon
    U, SYNC_OFF, SMSIN_FRPBID,              1127,   USHORT,     INDEX_KEY_ON,   ON;     # smsPBMatchFilePos
    U, SYNC_OFF, SMSIN_SORTKEY,             1129,   STRING(49),     INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSIN_SORTTIME,            1130,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
}
multikey Inbox
{
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SYSTEMTIME;
    NORMALVALUE: SMSIN_SORTKEY, SMSIN_SORTTIME;
}

table InboxUserData maxrecord = 6000, maxviewsize = 20
{
    U, SYNC_OFF, SMSIN_INBOXINDEX,          1100,   USHORT,     INDEX_KEY_OFF,  ON;     # smsInboxIndex
    U, SYNC_OFF, SMSIN_SEGINDEX,            1140,   BYTE,       INDEX_KEY_OFF,  ON;     # smsSegIndex
    U, SYNC_OFF, SMSIN_MSG,             1141,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsMsgLen, smsMsg
    U, SYNC_OFF, SMSIN_MSG_CHARLEN,         1142,   BYTE,       INDEX_KEY_OFF,  ON;     # userdataCharLen(before encoding)
}
multikey InboxUserData
{
    NORMALVALUE:SMSIN_INBOXINDEX, SMSIN_SEGINDEX;
}

table CMAS maxrecord = 100
{
    U, SYNC_OFF, SMSCMAS_INBOXINDEX,        1170,   USHORT,     INDEX_KEY_ON,   ON;     # SMSCMASboxIndex => Primary Key
    U, SYNC_OFF, SMSCMAS_INBOXID,           1171,   ULONG,      INDEX_KEY_OFF,  ON;     # smsInboxId 
    U, SYNC_OFF, SMSCMAS_MSGID,         1172,   USHORT,     INDEX_KEY_OFF,  ON;     # smsMsgID
    U, SYNC_OFF, SMSCMAS_CATEGORY,          1173,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCategory
    U, SYNC_OFF, SMSCMAS_SYSTEMTIME,        1174,   ULONG,      INDEX_KEY_ON,   ON;     # smsSystemTime => Soring Key
    U, SYNC_OFF, SMSCMAS_MCTIME,            1175,   DATE,       INDEX_KEY_OFF,  ON;     # smsMCTimt
    U, SYNC_OFF, SMSCMAS_BINMCTIME,         1176,   ULONG,      INDEX_KEY_OFF,  ON;     # smsBinMCTime
    U, SYNC_OFF, SMSCMAS_READFLAG,          1177,   BYTE,       INDEX_KEY_OFF,  ON;     # smsReadflag
    U, SYNC_OFF, SMSCMAS_LOCKFLAG,          1178,   BYTE,       INDEX_KEY_OFF,  ON;     # smsLockflag
    U, SYNC_OFF, SMSCMAS_DUPLICATEFLAG,     1179,   BYTE,       INDEX_KEY_OFF,  ON;     # smsDuplicateflag
    U, SYNC_OFF, SMSCMAS_PRIORITYFLAG,      1180,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPriorityflag
    U, SYNC_OFF, SMSCMAS_PRIVACYFLAG,       1181,   BYTE,       INDEX_KEY_OFF,  ON;     # smsPrivacyflag
    U, SYNC_OFF, SMSCMAS_MSGENCODINGTYPE,       1182,   BYTE,       INDEX_KEY_OFF,  ON;     # smsMsgEncodingType
    U, SYNC_OFF, SMSCMAS_MSG_CHAR,          1183,   BINARY(220),    INDEX_KEY_OFF,  ON;     # smsCMASMessage
    U, SYNC_OFF, SMSCMAS_MSG_CHAR_LEN,      1184,   BYTE,       INDEX_KEY_OFF,  ON;     # smsCMASMessageLength
    U, SYNC_OFF, SMSCMAS_FRADDRESS,         1185,   STRING(49), INDEX_KEY_ON,   ON;     # smsAddress
    U, SYNC_OFF, SMSCMAS_FRADDRESSLEN,      1186,   BYTE,       INDEX_KEY_OFF,  ON;     # smsAddress_len
    U, SYNC_OFF, SMSCMAS_SORTKEY,           1187,   STRING(49), INDEX_KEY_OFF,  ON;     # for name/number sorting
    U, SYNC_OFF, SMSCMAS_SORTTIME,          1188,   ULONG,      INDEX_KEY_OFF,  ON;     # for time sorting in desc
    U, SYNC_OFF, SMSCMAS_SRVC_CATEGORY,     1189,   USHORT,     INDEX_KEY_OFF,  ON;     # broadcast service category
    U, SYNC_OFF, SMSCMAS_CMAS_RECORD,       1190,   ULONG,      INDEX_KEY_OFF,  ON;     # CMAE Record 01 data(Category, Urgency, ...)
}
multikey CMAS
{
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SYSTEMTIME;
    NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SORTTIME;
}

database SMSInboxDB;

What kind of RDBMS is this schema for? And, is there a publicly available tool that will let me open and export the contents of the volumes?