Closed JoelBender closed 8 months ago
These two queries:
find_device_by_address = bacnet_query( """ select ?s where { ?s bacnet:hasAddress [ bacnet::network-number ?net ; bacnet:mac-address ?addr ] } """ ) find_device_by_instance = bacnet_query( "select ?s where { ?s bacnet:deviceInstance ?device_instance .}" )
should match the JSON element names from a DeviceAddress:
DeviceAddress
>>> ab = AddressBinding(deviceObjectIdentifier="device,999", deviceAddress="1235:12") >>> sequence_to_json(ab) {'device-object-identifier': 'device,999', 'device-address': {'network-number': 1235, 'mac-address': '0c'}}
So bacnet::network-number is a typo, bacnet:hasAddress should be bacnet:device-address, and bacnet:deviceInstance and should be bacnet:device-instance to be consistent.
bacnet::network-number
bacnet:hasAddress
bacnet:device-address
bacnet:deviceInstance
bacnet:device-instance
bacnet:hasObject is the last remaining lowerCamelCase predicate name, maybe that should change.
bacnet:hasObject
Note that the network number is unsigned, not sure if that's useful.
These two queries:
should match the JSON element names from a
DeviceAddress
:So
bacnet::network-number
is a typo,bacnet:hasAddress
should bebacnet:device-address
, andbacnet:deviceInstance
and should bebacnet:device-instance
to be consistent.