Property tree principles

I´m trying to understand the principles behind the property tree these cameras have stored inside them.
I read out a TeledyneDalsa camera using the provided library and examples (not aravis), and try to understand how it is possible to ‘universally’ find the right path to say ‘ExposureTime’ settings.
Wasn´t it ment to be a standard way of accessing a certain ‘register’? I think from comparing those “XML” files, that every verdor has it´s different way. Also aravis has lots of if-then-else in it.
Just a newbe question, to clarify if I´m being to naive.

Hi,

The XML data describing the camera registers is defined by the Genicam standard: https://www.emva.org/standards-technology/genicam/

This standard does not only define this XML data, but also an API. Aravis only tries to implement the XML part.

I don’t get what you mean.

Thanks for responding.
I read the genicam ‘standard’, but the SFNC lists most features as ‘recommended’ and from what I see at this code
https://github.com/AravisProject/aravis/blob/master/src/arvcamera.c Line 1370ff
I wonder what was the reason for the standard not even the “ExposureTime” feature to be mandatory.

For example aravis would not work on TeledyneDalsa as it has another name probably for that.
So the standard for me makes no sense.
Forgive me if I´m being naive, and stole your time, but I wanted to find out if I´m overseeing anything.

For me the best is to implement direct register access for every camera I´m using, as the XML does not provide any meaingful help.

Thanks for your time
Thomas