Death
Established Member
Hail all!
As some of ye might already know, I'm something of a White-Hat by nature (A Hacker who uses his skills for explorative and law-abiding purposes) and recently I've been having a poke around in the databases supplied with the Avantix NFM CD-ROM (Download) as one of my minor projects has been investigating the possibility of producing a Java version for mobile phones and other Java-enabled portable devices.
Anyhow...As the format of the NFM databases isn't one that I'm familiar with (I would imagine it's an Atos Origin proprietry format) I've been having to explore and figure out the databases by hand using hex editors and Windows Notepad.
Whilst doing so, I've come across some rather interesting data inside one of the databases supplied with the application ([AvantixRoot]\server\bobj\lu\data\refdata.dat) - Namely entries for stations right across Europe, assorted bits of NFM restrictions and other blurb (Some of which could be unpublished), one or two "hidden" stations and other rather interesting data! hock:
I havn't quite figured out the proper format and layout of the database yet, but I've dumped a few samples of some of the data that I've found within (Edits made and carriage returns added for readability) at the end of this post, and anyone else of a technical bent might be able to dig up more interesting stuff than I've found so far. 8)
I havn't had the time to explore the main FAREDATA.DAT database yet (It's a 65Mb file!) but I have a feeling that the stations in REFDATA.DAT reference fare entries (Or offsets in a fare table) in the main database. There might also be more interesting data located in that and MEMDATA.DAT as well, if anyone has the time to look!
Either way though, I'd be very interested to know why a lot of those international stations are in there. After all, one cannot buy a straight-up ticket from UK stations to European destinations (Believe me, I've tried getting FNB > HH-Hbf a number of times!) and none of them seem to be available/recognised in Avantix either! hock:
Finally: If anyone knows where I can find a full reference/description of the database format being used in Avantix, please could they point me to it? It'll speed up my work on figuring out the NFM a fair old bit!
Farewell, thanks, and have a lot of phun!
>> Death <<
-------------------------------------------------------------------------------
Example station entries (UK):
Example station entries (European):
Example NFM text strings:
As some of ye might already know, I'm something of a White-Hat by nature (A Hacker who uses his skills for explorative and law-abiding purposes) and recently I've been having a poke around in the databases supplied with the Avantix NFM CD-ROM (Download) as one of my minor projects has been investigating the possibility of producing a Java version for mobile phones and other Java-enabled portable devices.
Anyhow...As the format of the NFM databases isn't one that I'm familiar with (I would imagine it's an Atos Origin proprietry format) I've been having to explore and figure out the databases by hand using hex editors and Windows Notepad.
Whilst doing so, I've come across some rather interesting data inside one of the databases supplied with the application ([AvantixRoot]\server\bobj\lu\data\refdata.dat) - Namely entries for stations right across Europe, assorted bits of NFM restrictions and other blurb (Some of which could be unpublished), one or two "hidden" stations and other rather interesting data! hock:
I havn't quite figured out the proper format and layout of the database yet, but I've dumped a few samples of some of the data that I've found within (Edits made and carriage returns added for readability) at the end of this post, and anyone else of a technical bent might be able to dig up more interesting stuff than I've found so far. 8)
I havn't had the time to explore the main FAREDATA.DAT database yet (It's a 65Mb file!) but I have a feeling that the stations in REFDATA.DAT reference fare entries (Or offsets in a fare table) in the main database. There might also be more interesting data located in that and MEMDATA.DAT as well, if anyone has the time to look!
Either way though, I'd be very interested to know why a lot of those international stations are in there. After all, one cannot buy a straight-up ticket from UK stations to European destinations (Believe me, I've tried getting FNB > HH-Hbf a number of times!) and none of them seem to be available/recognised in Avantix either! hock:
Finally: If anyone knows where I can find a full reference/description of the database format being used in Avantix, please could they point me to it? It'll speed up my work on figuring out the NFM a fair old bit!
Farewell, thanks, and have a lot of phun!
>> Death <<
-------------------------------------------------------------------------------
Example station entries (UK):
Code:
70 559500L0270 5596002008060920051108QUEENSTOWN ROAD (BATTERSEA) QUEENSTOWN ROAD QRB
70 107200L0270 5597002008061020080610VAUXHALL VAUXHALL VXH
70 107200L0270 5598009999999920080612LONDON WATERLOO LONDON WATERLOO WAT
70 108600L0270 9666009999999920010101LONDON NECROPOLIS LONDON NECROPLISNEC
70 559900L0270 5599002008061020080610MALDEN MANOR MALDEN MANOR MAL
70 560000L0270 5600002008061020080610MORTLAKE MORTLAKE MTL
70 560100L0270 5601009999999920080612NORTH SHEEN NORTH SHEEN NSH
Code:
80 000900L0280 0049109999999920030813BASEL BAD BF BASEL BAD BF BBBDEBBO
80 L0280 0107109999999920030813HAMBURG HBF HAMBURG HBF HMGDEBEB
80 L0280 0130109999999919940529 DRESDEN-NEUSTADT301
80 013010L0280 0130509999999919910101 DRESDEN HBF DRE
80 013050L0280 0131109999999919940529 BAD SCHANDAU 311
80 013110L0280 0137109999999919940529 COSWIG/DRESD 371
80 013750L0280 0137709999999919940529 GROSSENH BBF 377
Code:
15R9M 20080906000120050612 SV SAVER
15R9M 20080906000220050612
15R9M 20080906000320050612Ticket Code: SVS
15R9M 20080906000420050612Ticket Class: STANDARD
15R9M 20080906000520050612Ticket Name: SAVER
15R9M 20080906000620050612Single/Return: SINGLE
15R9M 20080906000720050612Out Validity:-
15R9M 20080906000820050612Day - DATE ON TICKET
15R9M 20080906000920050612Time - SEE BELOW
15R9M 20080906001020050612Break of Journey: NO
15R9M 20080906001120050612Pre-Booking Requirement: NONE
15R9M 20080906001220050612Reservations Compulsory: NO
15R9M 20080906001320050612Child Discount: YES
15R9M 20080906001420050612Railcard Discount: YES
15R9M 20080906001520050612Group Discount: YES
15R9M 20080906001620050612Refunds: RETAIL MANUAL PART 1
15R9M 20080906001720050612Out Travel: AVAILABLE ANY DAY