The virtual server definition format hasn't changed too much between any version of 9.x or 10.x, so you shouldn't have to handle too many different cases. You might have to read through the matching close brace of a VIP in 10.x as there are nested curly braces within the definition:
9.4.5:
virtual example_http_vs {
snat automap
pool example_http_pool
destination 1.1.1.1:http
ip protocol tcp
profiles
http
tcp-lan-optimized
}
10.0.1
virtual example_http_vs {
snat automap
pool example_http_pool
destination 1.1.1.1:443
ip protocol 6
profiles {
http {}
server.example.com_clientssl {
clientside
}
tcp {}
}
}
Aaron