Professional Documents
Culture Documents
ISO 16484-5-2017 Amd1-2020
ISO 16484-5-2017 Amd1-2020
ISO 16484-5-2017 Amd1-2020
STANDARD 16484-5
Sixth edition
2017-05
AMENDMENT 1
2020-04
Reference number
ISO 16484-5:2017/Amd.1:2020(E)
© ISO 2020
ISO 16484-5:2017/Amd.1:2020(E)
Foreword
(This fo rewo rd is no t p art o f the standard. It is merely info rmative and do es no t co ntain requirements nec essary fo r
FOREWORD
The purpo se o f this addendum is to add several indep endent sub stantive changes to the B ACnet standard. The changes
1 3 5 -2 0 1 6 b i - 2 . Change D evic eCo mmunicaito nCo ntro lS ervic e fo r Audit Rep o rting.
1 3 5 -2 0 1 6 b l - 2 . Clarify ReadPro p ertyMultip le resp o nse on O PTIO NAL when emp ty.
1 3 5 -2 0 1 6 b n-1 . Make S CHED B IB B s co nsistent o n sup p o rted datatyp es, and add B O O LEAN.
1 3 5 -2 0 1 6 b p -2 . Make 'typ e' c o nsistent at all levels and intro duc e 'effectiveTyp e'.
1 3 5 -2 0 1 6 b q-1 . F ix the Ab sentee_Limit p rop erty of the Access Credential o b j ect typ e.
1 3 5 -2 0 1 6 b q-2 . Ensure that the denied o r granted ac cess event is generated last.
In the fo llo wing do cument, language to be added to existing c lauses o f EN IS O 1 6484-5 and Addenda is indic ated
thro ugh the use o f italics , while deletio ns are indicated b y strikethro ugh. Where entirely new sub clauses are p ro p o sed to
The use o f p laceho lders like X, Y, Z, X1 , X2 , etc . , sho uld no t b e interpreted as literal values o f the final standard. These
p lac eho lders will be assigned actual numb ers/letters o nly with inco rp o ration o f this addendum into the standard fo r
Part 5:
Data communication protocol
AMENDMENT 1
135-2016bd-1 Add a Staging Object Type
Ratio nale
The S taging o b j ec t typ e pro vides a way fo r B ACnet devices to map analo g values o nto multip le B inary Value, B inary
A co mmon use case is in lighting app licatio ns, where a level, identified by a numeric value, sets the app rop riate values of
S up p o rt o f this new ob j ect type is excluded fro m all data sharing B IB B s fo r life safety and ac cess c o ntro l.
staged value. A " S taging" map s a numeric value onto multip le disc rete ranges that define individual “stages” ( Nstages ).
Each S taging ob j ect is asso ciated with a co llec tio n of references to b inary valued o b j ec ts ( Nreferences ) . Each S taging o b j ect
may therefo re contro l B inary O utp ut, B inary Value, o r B inary Lighting O utp ut o b j ects. Every stage sp ecifies an arb itrary
co mb inatio n of ACTIVE/INACTIVE values to be written to these referenced ob j ects. S tages are defined by a limit, a
deadb and, and the co llec tio n of values fo r the referenc ed o b j ects.
Figure 1 2-X sho ws a typ ical S taging o b j ect ap p licatio n with fo ur stages ( Nstages =4 ) and two referenced b inary o b j ects
( Nreferences = 2).
Max_Pres_value = Stages[4].Limit
Stages[4].Values =
Stage 4
Stages[3].Limit
Present_Value
STAGE
Stage 33 Stages[3].Values =
Stages[2].Limit
STAGE
Stage 22 Stages[2].Values =
Stages[1 ].Limit
STAGE
Stage 11 Stages[1 ].Values =
Min_Pres_Value
Stages[2].Limit
Stages[2].Deadband
Stage 2
Present_Value < (Stages[2].Limit - Stages[2].Deadband)
Present_Stage = 2
t
Present_Stage: 2 3 2 3 2
Figure 12-X2. S tage Limits inc o rp o rate hysteresis thro ugh the use o f a D eadb and around eac h Limit
S tages are defined by limits with a symmetrical deadb and. A deadb and greater than zero is used to p revent unwanted
o scillatio n when the Present_Value is clo se to a limit. As the Present_Value increases, if it rises ab o ve the limit fo r a
stage p lus the deadb and fo r that stage, the Present_S tage transitio ns to that stage+1 . S imilarly, as the Present_Value
decreases, it must fall b elo w the limit fo r a stage minus the deadb and for that stage b efore Present_S tage transitio ns to
1)
Present_Value
Write 1 8.0
1 8.0 Stages
Read Limit Deadband Values
[4] 40.0 1 .0 01 1 1 1 1
1 8.0 is in Stage 2 [3] 30.0 1 .0 01 1 000
2) [2] 20.0 1 .0 1 1 1 000
Present_Stage [1 ] 1 0.0 1 .0 1 00000
2
S taging o b j ects may op tio nally sup p ort intrinsic rep orting to fac ilitate the rep orting of fault co nditio ns. S taging o b j ec ts
that sup p o rt intrinsic rep orting shall ap p ly the NO NE event algo rithm.
The o b j ect and its p rop erties are summarized in Table 1 2 - X and describ ed in detail in this clause.
Present_Value REAL W
1
S tages B ACnetARRAY[ N] o f B ACnetS tageLimitValue R
1
S tage_Names B ACnetARRAY[ N] o f CharacterS tring O
Units B ACnetEngineeringUnits R
2
Target_References B ACnetARRAY[ N] o f B ACnetD evic eO b j ectReference R
D efault_Present_Value REAL O
Min_Pres_Value REAL R
Max_Pres_Value REAL R
3
CO V_Increment REAL O
4, 5
No tificatio n_Class Unsigned O
4, 5
Event_Enab le B ACnetEventTransitio nB its O
4, 5
Acked_Transitio ns B ACnetEventTransitio nB its O
4, 5
No tify_Type B ACnetNo tifyTyp e O
4, 5
Event_Time_S tamp s B ACnetARRAY[ 3 ] o f B ACnetTimeS tamp O
5,6
Event_Message_Texts B ACnetARRAY[ 3 ] o f CharacterS tring O
5
Event_Message_Texts_Co nfig B ACnetARRAY[ 3 ] o f CharacterS tring O
4, 5
Event_D etectio n_Enab le B O O LEAN O
7, 8, 9
Value_S o urc e B ACnetValueS o urce O
1
The array size o f this p ro p erty is Nstages .
2
The array size o f this p ro p erty is Nreferences .
3
This p ro p erty is required if the o b j ect supp o rts CO V rep o rting.
4
These pro p erties are required if the ob j ect sup po rts intrinsic rep o rting.
5
These pro p erties shall b e p resent o nly if the o b j ect supp o rts intrinsic rep o rting.
6
This p ro p erty, if present, is required to b e read- only.
7
This p ro p erty is required if the o b j ect sup po rts the value sourc e mechanism.
8
This p ro p erty shall b e present o nly if the o b j ect supp o rts the value so urce mechanism.
9
This p ro p erty shall b e writab le as describ ed in Clause 1 9 . 5 .
12.X .1 Object_Identifier
This p rop erty, o f typ e B ACnetO b j ectIdentifier, is a numeric co de that is used to identify the o b j e ct. It shall be unique
12.X .2 Object_Name
This p rop erty, o f typ e Charac terS tring, shall rep resent a name fo r the ob j ec t that is unique within the B ACnet device that
maintains it. The minimum length o f the string shall be o ne character. The set o f characters used in the O b j ect_Name
12.X .3 Object_Type
This p rop erty, o f typ e B ACnetO b j ectTyp e, indic ates memb ership in a p articular o b j ect typ e class. The value o f this
12.X .4 Present_Value
This p ro p erty, of typ e REAL, indic ates the current value, in engineering units, o f the S taging o b j ect. If Present_Value is
written with a value less than Min_Pres_Value, then it shall b e clamp ed to Min_Pres_Value. If Present_Value is written
Whenever Present_Value is changed, the new value shall be co mp ared with the 'Limit' values fo r the entire S tages array
Present_Value = npv
Figure 12-X4. Pseudo co de Algo rithm fo r Evaluating Present_Value and Present_S tage
each Target_Referenc es array element. For each b it (Index = 0 to Nreferences -1 ) in the S tages[ Present_S tage] . Values
b itstring, if the b it is set (1 ) , an ACTIVE value shall b e written, o r if clear (0 ), then an INACTIVE value shall b e writte n
Writes to Present_Value that sub sequently trigger writing to referenced o b j ects due to reevaluatio n o f Present_S tage, are
no t exp ected to wait until the referenc e writes o ccur befo re returning a Result(+) or Result(- ) fo r the write to
Present_Value. S ub sequently if any write to a referenced o b j ect fails, Reliab ility shall be changed to
CO MMUNI CATIO N_F AILURE. The CO MMUNIC ATIO N_FAILURE shall remain in effect until all referenc e writes
have b een co mp leted suc cessfully. Ho w a p artic ular imp lementatio n handles o ther failures during writing to referenc ed
o b j ects shall b e a lo c al matter excep t that Reliab ility shall indicate a value o ther than NO _F AULT_D ETECTED .
The o rder of evaluation o f referenc es and any referenc ed o bj ect write delay shall b e a lo cal matter.
12.X.5 Present_Stage
This p rop erty, o f typ e Unsigned, shall indicate the array index (1 to N stages ) that co rrespo nds to the c urrent ac tive stage or
0 meaning that the Present_S tage has no t yet b een initialized. Up on devic e restart, o r when the S tages pro p erty is written
to any o f its elements, or the size o f the S tages array changes, Present_S tage shall be set to 0 temp o rarily and then
Attemp ts to read Present_S tage when it is internally set to 0 shall return a Result(- ) with an 'Erro r Class ' o f PRO PERTY
12.X.6 Stages
This p ro p erty, of typ e B ACnetARRAY[ N] o f B ACnetS tageLimitValue, is an array rep resenting the stages by limit,
desired p resent values fo r the o b j ec ts referenced by Target_References, and deadb and. The size o f the array is N stages ,
where Nstages shall b e greater than 1 . B ACnetS tageLimitValue is a tup le co nsisting of the fo llo wing fields:
Limit REAL
Values B IT S TRING
D eadband REAL
The 'Limit' values fo r all elements shall b e strictly ascending, such that:
If any of the stages do no t meet this criterion, then the Reliab ility p rop erty shall have a value of
CO NF IGURATIO N_ERRO R.
The b its in 'Values ' co rresp o nd to references in the Target_Referenc es array, suc h that b it (Index = 0 to N references - 1)
co rresp o nds to Target_References[ Index + 1 ] , etc . The length o f the 'Values ' b itstring shall b e N references b its.
The 'D eadb and' shall be zero or p o sitive. A negative value fo r 'D eadb and' shall cause the value o f Reliab ility to be
CO NF IGURATIO N_ERRO R.
If the size o f the S tages array is increased, then the new array elements, fo r which no initial value is p rovided, shall be
initialized to co ntain 'Limit' = 0. 0, 'D eadb and' = 0. 0, and 'Values' = { 0… 0} , and the value o f Reliab ility shall be set to
CO NF IGURATIO N_ERRO R.
If the size of the S tages array is less than 2, then the Reliab ility p ro p erty shall have a value of
CO NF IGURATIO N_ERRO R.
If Reliab ility has the value CO NF IGURATIO N_ERRO R, then Present_Value shall be set to Min_Pres_Value and
Present_S tage to 1 .
If S tages[ Nstages] . Limit b ec o mes smaller than Present_Value, then Present_Value shall b e set to S tages[ Nstages] . Limit.
If the S tages p ro p erty is written, the value o f Present_S tage shall b e reevaluated and co rresp o nding writes o f new values
If the size o f this array is changed, the size of the S tage_Names array shall also b e c hanged to the same size.
12.X.7 Stage_Names
This p ro p erty, o f typ e B ACnetARRAY[ N] o f CharacterS tring, is an array representing a name fo r eac h stage. The
numb er o f array elements in S tage_Names shall be the same as the numb er of array elements in the S tages p ro p erty.
S tage_Names[ 1 ] shall c orrespo nd to the name for Present_S tage=1 . S tage_Names[ 2 ] shall co rresp ond to the name for
If the size o f this array is changed, the size o f the S tages array shall also be c hanged to the same size. If the size of
S tage_Names is increased, then it shall b e a lo cal matter what the uninitialized array elements co ntain.
12.X.8 Status_Flags
This p ro p erty, of typ e B ACnetS tatusF lag s, rep resents fo ur B o o lean flags that indicate the general " health" o f a S taging
o b j ec t. Three o f the flags are asso ciated with the values o f o ther p rop erties o f this o b j ect. A mo re detailed status co uld b e
determined by reading the pro p erties that are linked to these flags. The relatio nship between individual flags is not
where:
IN_ALARM Lo gical FALS E (0 ) if the Event_S tate p ro p erty has a value o f NO RMAL, o therwise lo gical
TRUE (1 ) .
O UT_O F _S ERVI CE Lo gical TRUE (1 ) if the Out_O f_S ervice p rop erty has a value o f TRUE, o therwise lo gical
F ALS E(0 ) .
If the o b j ec t supp o rts event rep o rting, then this p ro p erty shall be the p S tatusFlags p arameter fo r the o b j ect's event
algo rithm. S ee Clause 1 3 . 3 for event algorithm p arameter descrip tio ns.
12.X.9 Event_State
The Event_S tate p rop erty, o f typ e B ACnetEventS tate, is included in o rder to p ro vide a way to determine whether this
o b j ect has an ac tive event state asso ciated with it (see Clause 1 3 . 2. 2 . 1 ) . If the o b j ect sup p o rts event repo rting, then the
Event_S tate p ro p erty shall indicate the event state o f the ob j ect. If the o b j ect do es no t sup p ort event repo rting, then the
12.X.10 Reliability
The Reliab ility p ro p erty, of typ e B ACnetReliab ility, p ro vides an indication that the p rop erties o f the S taging o b j ect are in
a co nsistent state and that Target_References are b eing reliab ly written. S ee Clauses 1 2 . X. 4 . 1 , 1 2 . X. 6 , and 1 2 . X. 1 7 .
Tab le 1 2 - X2 summarizes scenario s when Reliab ility has a value o ther than NO _FAULT_D ETECTED .
Min_Pres_Value is >=
CO NFIGURATIO N_ERRO R 1 2 . X. 1 7
(S tages[ 1 ] . Limit - S tages[ 1 ] . Deadb and)
12.X.11 Out_Of_Service
The O ut_O f_S ervice pro p erty, o f typ e B O O LEAN, is an indic atio n whether (TRUE) or no t (F ALS E) the Present_Value
a) changes to the Present_Value p rop erty are deco up led from the Target_References. This means that the
b) the Present_Value p ro p erty and the Reliab ility p ro p erty, if c ap ab le of taking on values o ther than
NO _F AULT_D ETECTED , shall b e writab le to allo w simulating sp ecific c o nditions o r fo r testing p urp o ses;
c) o ther functions that dep end on the state of the Present_Value or Reliab ility p rop erties shall resp o nd to
c hanges made to these p ro p erties, as if tho se changes had o ccurred while the o b j ec t was in servic e;
Restrictions on writing to the Present_Value property by software local to the B ACnet device do not apply to local human-
machine interfaces.
When O ut_O f_S ervice b ec o mes FALS E, it shall trigger up dating o f referenced ob j ects as describ ed in Clause 1 2 . X. 4 . 1 .
12.X.12 Description
This p ro perty, of typ e Charac terS tring, is a string o f p rintab le c haracters who se c ontent is no t restric ted.
12.X.13 Units
This p rop erty, of typ e B ACnetEngineeringUnits, indic ates the measurement units of this o b j ect. S ee the
12.X.14 Target_References
This p ro perty, of typ e B ACnetARRAY[ N] o f B ACnetD evic eO b j ectReference, is an array rep resenting references to
B inary Outp ut, B inary Value, or B inary Lighting Outp ut o b j ects. The size of the array is Nreferences . The
Target_References array elements [ Index = 1 to Nreferences ] shall co rresp o nd to the b it(Index - 1 ) o f all 'Values ' b itstrings
If the p rop erty is restricted to referencing o b j ects within the c o ntaining devic e, an attemp t to write to a reference to an
o b j ect o utside the co ntaining devic e into this p rop erty shall cause a Result(- ) to be returned with an erro r class of
PRO PERTY and an erro r c ode of O PTIO NAL_F UNCTIO NALITY_NO T_S UPPO RTED . Uninitialize d
Target_References array elements shall be given the instanc e number 41 9 43 0 3 . A Target_References array element
who se instance numb er is equal to 4 1 9 4 3 03 shall b e co nsidered uninitialized and shall b e igno red in all o p eratio ns that
If the size o f this array is changed, the size o f the 'Values ' b itstrings o f the S tages p ro p erty shall also b e c hanged to the
same size. If the b itstring length is inc reased, added b its shall b e cleared (0 ) .
12.X.15 Priority_For_Writing
This p ro p erty defines the prio rity at which the referenced p rop erties are co mmanded. It co rresp onds to the 'Prio rity'
p arameter o f the WritePro p erty servic e. It is an unsigned integer in the range 1 - 1 6 , with 1 b eing considered the highest
12.X.16 Default_Present_Value
This o p tio nal p rop erty, o f type REAL, defines the value to b e used fo r Present_Value upo n device restart. Upo n restart
D efault_Present_Value shall be co p ied to Present_Value and c ause the reevaluation o f Present_Value as describ ed in
Clause 1 2 . X. 4 .
12.X.17 Min_Pres_Value
This p ro p erty, of typ e REAL, rep resents the minimum value fo r Present_Value. Min_Pres_Value shall always b e strictly
If a change to Min_Pres_Value, S tages[ 1 ] . Limit, or S tages[ 1 ] . D eadb and vio lates this rule, then the Reliab ility p rop erty
shall have a value of CO NFIGURATIO N_ERRO R. If a change to Min_Pres_Value causes it to be greater than
12.X.18 Max_Pres_Value
This read- o nly pro p erty, o f typ e REAL, rep resents the maximum value fo r Present_Value. This value shall b e defined as
the ‘ Limit’ o f the last entry o f the S tages p ro p erty array (i. e. , S tages[ Nstages ] . Limit) .
If the size o f the S tages array is zero , then Max_Pres_Value shall b e equal to Min_Pres_Value.
12.X.19 COV_Increment
This p ro p erty, o f typ e REAL, shall sp ecify the minimum change in Present_Value that will c ause a CO V no tific atio n to
b e issued to sub sc rib er CO V- clients. This p ro p erty is required if CO V rep orting is sup p o rted b y this ob j ec t.
12.X.20 Notification_Class
This p ro perty, o f typ e Unsigned, shall sp ec ify the instance o f the No tific atio n Class o b j ect to use fo r event-no tification-
distrib utio n.
12.X.21 Event_Enable
This p ro p erty, of typ e B ACnetEventTransitio nB its, shall c o nvey three flags that sep arately enab le and disab le the
distrib utio n of TO _O F FNO RMAL, TO _F AULT, and TO_NO RMAL no tificatio ns (see Clause 1 3 . 2 . 5 ). A device is
allo wed to restrict the set o f sup p o rted values for this p rop erty b ut shall sup po rt (T, T, T) at a minimum.
12.X.22 Acked_Transitions
This read- o nly p rop erty, of typ e B ACnetEventTransitio nB its, shall co nvey three flags that sep arately indicate the
ackno wledgment state for TO _O FF NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2 . 2. 1 . 5 ) . Each
flag shall have the value TRUE if no event of that typ e has ever o ccurred fo r the o b j ect.
12.X.23 Notify_Type
This p rop erty, o f typ e B ACnetNo tifyTyp e, shall co nvey whether the no tifications generated by the o b j ect sho uld be
Events or Alarms. The value of the p ro p erty is used as the value of the 'No tify Typ e' service p arameter in event
12.X.24 Event_Time_Stamps
This read- o nly p ro p erty, of typ e B ACnetARRAY[ 3 ] of B ACnetTimeS tamp , shall co nvey the times of the last
TO _O FF NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2. 2 . 1 ) . Timestamp s o f typ e Time or Date
shall have X'F F ' in eac h o ctet, and S equence Numb er timestamp s shall have the value 0 if no event o f that typ e has ever
12.X.25 Event_Message_Texts
This read- only p rop erty, o f typ e B ACnetARRAY[ 3 ] o f CharacterS tring, shall co nvey the message text values of the last
TO _O F FNO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2 . 2 . 1 ). If a p articular typ e o f event has yet
to o c cur, an emp ty string shall b e sto red in the resp ec tive array element.
12.X.26 Event_Message_Texts_Config
This p rop erty, o f typ e B ACnetARRAY[ 3 ] o f Charac terS tring, co ntains the c harac ter strings which are the b asis fo r the
'Me ssage Text' p arameter fo r the event no tificatio ns of TO _O F F NO RMAL, TO _FAULT, and TO _NO RMAL events,
resp ectively, generated by this o b j ec t. The charac ter strings may o p tionally co ntain p ro p rietary text sub stitutio n co des to
inco rp orate dynamic info rmatio n such as date and time o r o ther info rmatio n.
12.X.27 Event_Detection_Enable
This p ro p erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (F ALS E) intrinsic rep o rting is enab led in the o b j ect
and contro ls whether (TRUE) o r no t (F ALS E) the o b j ec t will b e co nsidered b y event summarizatio n services.
This p ro p erty is exp ected to be set during system configuratio n and is no t exp ected to c hange dynamically.
When this p ro p erty is FALS E, Event_S tate shall be NO RMAL, and the p ro p erties Acked_Transitio ns,
Event_Time_S tamp s, and Event_Message_Texts shall b e equal to their resp ective initial co nditio ns.
12.X.28 Reliability_Evaluation_Inhibit
This p rop erty, o f typ e B O O LEAN, indic ates whether (TRUE) or no t (F ALS E) reliab ility- evaluatio n is disab led in the
o b j ec t. This p ro p erty is a runtime o verride that allo ws temp orary disab ling o f reliab ility- evaluatio n.
When reliab ility- evaluation is disab led, the Reliab ility p rop erty shall have the value NO _F AULT_D ETECTED unless
O ut_O f_S ervice is TRUE and an alternate value has b een written to the Reliab ility p ro p erty.
12.X.29 Property_List
This read-o nly p ro p erty is a B ACnetARRAY o f p rop erty identifiers, o ne pro p erty identifier for each pro p erty that exists
within the o b j ect. The O b j ect_Name, O b j ect_Typ e, O b j ect_Identifier, and Pro p erty_List p ro p erties are no t included in
the list.
12.X.30 Value_Source
This p rop erty, o f typ e B ACnetValueS o urce, indicates the so urce of the value o f the Present_Value. The Value_S o urce
p ro p erty and its use in the value so urce mechanism are describ ed in Clause 1 9 . 5 .
12.X.31 Tags
This p rop erty, of typ e B ACnetARRAY o f B ACnetNameValue, is a co llectio n o f tags for the o b j ect. S ee Clause Y. 1 . 4
fo r restrictio ns o n the string values used fo r the names o f these tags and fo r a descrip tio n o f tagging and the mec hanism
Each entry in the array is a B ACnetNameValue co nstruct which co nsists o f the tag name and an o p tional value. If the tag
is defined to b e a " semantic tag" , then it has no value, and the " value" field o f the B ACnetNameValue shall b e ab sent.
While so me tags may be known in advanc e when a device is manufactured, it is recommended that imp lementations
c o nsider that this kind of info rmatio n might no t be known until a devic e is dep loyed and to p rovide a means of
12.X.32 Profile_Location
This p ro p erty, o f typ e CharacterS tring, is the URI o f the lo c atio n o f an xdd file (S ee Claus e X. 2 ) co ntaining the definition
o f the CS ML typ e sp ecified b y the Profile_Name p ro p erty and po ssib le o ther informatio n (S ee Annex X) . The URI is
restric ted to using o nly the " http " , " http s" , and " b acnet" URI schemes. S ee Clause Q . 8 for the definitio n of the " b acnet"
URI scheme.
If a Pro file_Lo cation value is no t p rovided fo r a p artic ular o b j ec t, then the client shall use the Pro file_Lo catio n of the
D evice o b j ect, if pro vided, to find the definitio n o f the Pro file_Name.
12.X.33 Profile_Name
This p ro p erty, of typ e CharacterS tring, is the name of an o b j ec t p ro file to whic h this o b j ec t co nforms. To ensure
uniqueness, a p rofile name shall b egin with a vendo r identifier co de (see Clause 2 3 ) in base- 1 0 integer format, fo llo wed
b y a dash. All sub sequent c haracters are administered b y the o rganizatio n registered with that vendor identifier code. The
vendor identifier code that prefixes the p ro file name shall indicate the o rganizatio n that p ub lishes and maintains the
p ro file. This vendo r identifier need no t have any relatio nship to the vendo r identifier of the devic e within which the
o b j ect resides.
A p ro file defines a set o f additio nal p rop erties, b ehavio r, and/o r requirements fo r this o b j ect b eyo nd tho se sp ecified here.
This standard defines o nly the fo rmat o f the names of p rofiles. If the Profile_Lo c atio n p ro p erty o f this o b j ect or the
D evice o b j ect is p resent and no nemp ty, then the value of this p ro p erty shall b e the name o f a CS ML typ e defined in an
or Present_Stage
or
Table 13-5. Prop erties Rep o rted in CHANGE_O F_RELIAB ILITY No tificatio ns
... ...
Staging Present_Value
Present_Stage
Timer ...
1
...
...
schedule (1 7 )
staging (60) ,
structured-view (2 9 ),
...
...
-- see lift (5 9 ),
...
}
BACnetObjectTypesSupported : : = B IT S TRING {
...
lift (5 9 )
staging (60)
...
default-fade-time (3 7 4),
default-present-value (492) ,
default-ramp-rate (3 7 5 ),
...
prescale (1 8 5 ),
present-stage (493) ,
present-value (8 5 ),
stages (494) ,
stage-names (495) ,
start- time (1 4 2 ),
...
target-references (496) ,
threat-authority (3 06),
...
...
...
BACnetStageLimitValue : : = S EQ UENCE {
limit REAL,
Staging
Object_Name
Present_Value
Present_Stage
Status_Flags
Units
Staging
Present_Value
Out_Of_Service
D evices claiming c o nfo rmance to this B IB B shall be cap ab le o f reading and disp laying the o b j ect p rop erties listed in
Tab le K- 1 , exc luding p ro p erties o f Averaging, Loo p , Ac cumulato r, Pulse Co nverter, Channel, Lighting O utput, and
B inary Lighting O utput ob j ects, and Staging objects, and b e cap ab le of reading and disp laying the o b j ect p ro p erties listed
in Tab le K- 7 .
...
retrieve any standard p rop erty o f any standard o b j ect typ e listed in Tab le K- 1 , excluding Averaging, Lo op , Accumulator,
Pulse Co nverter, Channel, Lighting O utp ut, and B inary Lighting O utput o b j ec ts, and Staging objects, including the
o b j ec ts listed in Tab le K- 7 , e xcep t fo r tho se p ro p erties listed in Tab le K- 2 and any p roperty defined by the standard as
no t readab le via ReadProp erty. D evice A may use alternate services where sup po rt fo r executio n of the alternate service
...
D evic es claiming conformance to this B IB B shall be cap able o f co mmanding and relinquishing standard co mmandab le
p ro p erties at p rio rity 8 (o ther p rio rities may also b e sup p o rted) o f tho se o b j ects listed in Tab le K- 5 exc luding Averaging,
Lo o p , Acc umulato r, Pulse C o nverter, Channel, Lighting O utp ut, and B inary Lighting O utp ut o b j ects, and Staging
objects, and writing the p rop erties lis ted in Tab le K- 5 and Tab le K- 8 , excluding Averaging, Lo op , Acc umulator, Pulse
Co nverter, Channel, Lighting O utp ut, and B inary Lighting O utp ut o b j ec ts, and Staging objects .
...
excluding Averaging, Lo o p , Acc umulato r, Pulse Co nverter, Channel, Lighting O utput, and B inary Lighting O utp ut
o b j ects, and Staging objects , where the p rop erty is no t required to b e read- o nly, o r to which acc ess is o therwise res tricted
b y the standard (e. g. , Lo g_B uffer) . D evice A shall b e cap able o f co mmanding and relinquishing standard c ommandab le
p ro p erties at any p rio rity. D evice A may use alternate servic es where suppo rt for executio n o f the alternate service is
...
D evices c laiming co nfo rmance to this B IB B shall be cap ab le o f reading and disp laying the o b j ect p rop erties listed in
Tab le K- 1 , excluding p ro p erties o f Averaging, Loo p , Accumulato r, Pulse Co nverter, Channel, Lighting O utput, and
B inary Lighting O utput ob j ects, and Staging objects , and b e c ap ab le of reading and disp laying the o b j ec t p ro p erties listed
in Tab le K- 9 .
...
retrieve any standard pro p erty of any standard ob j ec t typ es listed in Tab le K- 1 , excluding Averaging, Lo op,
Accumulato r, Pulse Co nverter, Channel, Lighting O utput, and B inary Lighting O utp ut o b j ec ts, and Staging objects ,
including the p rop erties listed in Tab le K-9 , exc ep t fo r tho se p rop erties listed in Tab le K-2 and any p rop erty defined by
the standard as no t readab le via ReadPro p erty. D evic e A may use alternate services where sup p o rt for executio n o f the
...
D evices claiming conformance to this B IB B shall be cap able o f co mmanding and relinquishing standard co mmandab le
p ro p erties at p rio rity 8 (o ther p rio rities may also b e sup p o rted) o f tho se o b j ects listed in Tab le K- 5 excluding Averaging,
Lo o p , Ac cumulato r, Pulse C o nverter, Channel, Lighting O utp ut, and B inary Lighting O utp ut o b j ects, and Staging
objects , and writing the p ro p erties listed in Tab le K- 5 and Tab le K- 1 0, excluding Averaging, Lo op , Acc umulato r, Pulse
Co nverter, Channel, Lighting O utp ut, and B inary Lighting O utp ut o b j ects, and Staging objects .
exc luding Averaging, Lo o p , Accumulato r, Pulse Co nverter, Channel, Lighting O utput, and B inary Lighting O utp ut
o b j ects, and Staging objects , where the p rop erty is no t required to b e read- o nly, o r to whic h access is o therwise res tricted
b y the standard (e. g. , Lo g_B uffer) . D evice A shall b e cap able o f co mmanding and relinquishing standard c ommandab le
p ro p erties at any p rio rity. D evic e A may use alternate services where supp o rt for executio n o f the alternate service is
With the additio n o f the Lighting O utp ut and B inary Lighting O utp ut o b j ec t typ es, there is a need fo r lighting sp ecific
O utp ut, B inary Value, Multi- S tate O utp ut, and Multi- S tate Value o b j ect typ es.
WritePro p erty x
D evic es c laiming c o nfo rmance to D S - LO - A shall be ab le to write to the Present_Value p ro p erty o f the Lighting
O utp ut, B inary Lighting O utp ut, Analo g O utp ut, Analo g Value, B inary O utp ut, B inary Value, Multi- S tate O utp ut,
A device claiming sup p ort fo r D S - LO - A is intero p erab le with devic es that sup p o rt any comb inatio n of D S - LO - B , D S -
B LO - B , o r D S - WP- B in the case o f Analog O utput, Analog Value, B inary Outp ut, B inary Value, Multi- S tate O utp ut,
O utp ut, B inary Value, Multi- S tate O utp ut, and Multi- S tate Value o b j ec t typ es.
ReadPro p erty x
D evic es claiming co nfo rmance to D S - LO S - A shall b e ab le to read the Present_Value and Egress_Ac tive p rop erties o f
Lighting O utput and B inary Lighting O utput o b j ect typ es and to read the Present_Value p ro p erty o f Analo g O utput,
Analo g Value, B inary O utp ut, B inary Value, Multi- S tate O utp ut, and Multi- S tate Value o bj ect typ es.
A device claiming sup p o rt for D S - LO S - A is intero p erab le with devices that sup p o rt any c o mb inatio n o f D S - LO - B ,
DS - B LO - B , or D S - RP- B in the case o f Analo g O utput, Analo g Value, B inary O utp ut, B inary Value, Multi- S tate
Outp ut, B inary Value, Multi- S tate O utp ut, and Multi- S tate Value o b j ect typ es.
WritePro p erty x
The A devic e shall be c ap ab le o f mo difying all o f the standard pro p erties o f the Lighting O utp ut, B inary Lighting
O utp ut, Channel, Analog O utp ut, Analo g Value, B inary Outp ut, B inary Value, Multi- S tate O utp ut, and Multi- S tate
A device claiming sup p ort for D S - ALO - A is intero p erab le with devic es that sup p o rt any co mb inatio n o f D S - LO - B ,
D S - B LO - B , D S - RP- B , or D S - WP- B in the case o f Analo g O utput, Analog Value, B inary O utp ut, B inary Value,
Multi- S tate O utp ut, and Multi- S tate Value o b j ect typ es.
ReadPro p erty x
WriteP ro p erty x
D evic es claiming co nfo rmance to D S - LO - B shall sup p o rt the Lighting O utp ut ob j ect typ e.
A device claiming supp o rt fo r D S - LO - B is intero p erab le with devices that supp o rt D S - LO -A o r D S - ALO - A.
ReadPro p erty x
WritePro p erty x
D evic es claiming co nfo rmance to D S - B LO - B shall sup p o rt the B inary Lighting O utput o b j ect typ e.
A device claiming supp o rt fo r D S - B LO - B is intero p erab le with devices that sup po rt D S - LO - A o r D S - ALO - A.
dynamically create and delete Lighting O utp ut, B inary Lighting O utp ut, and Channel o b j ect typ es sup po rted b y the B
device.
CreateO b j ec t x
D eleteO b j ec t x
D evices claiming c o nfo rmance to this B IB B shall sup p o rt D S - RP- A. The A devic e shall be cap ab le of using
ReadPro p erty to retrieve any of the p ro p erties listed b elo w. The A device may use alternate services where sup p o rt for
ReadPro p erty x
D evices claiming conformance to this B IB B shall b e cap ab le o f reading and disp laying the o b j ec t p rop erties listed in
Tab le K- X1 .
B link_Warn_Enab le
The fo rmat of a presented p ro p erty value is unrestric ted; the intent o f this B IB B is no t to imp o se ho w, or in what
fo rm, a device disp lays data values. F o r examp le, enumerated values co uld b e disp layed as ico ns, referenc es c o uld b e
disp layed using the referenced o b j ec t's name, and numerical values c o uld b e disp layed grap hically.
Actio ns taken b y the A device when retrieval o f a value fo r disp lay fails are a lo cal matter.
D evic es c laiming c onfo rmance to this B IB B are no t required to sup p ort presentatio n of ob j ects and p rop erties that are
intro duced in a Pro to co l_Revisio n newer than that c laimed by the A device.
A device c laiming sup p o rt for this B I B B is intero p erab le with devices that sup p o rt D S - RP- B and o ne o r mo re o f the
ReadPro p erty to retrieve any standard p ro p erty o f any standard ob j ect typ e listed in Tab le K- 1 , excluding Averaging,
Lo o p , Acc umulato r, and Pulse Co nverter o b j ects, excep t fo r tho se p ro p erties listed in Tab le K- 2 and any pro p erty
defined by the standard as no t readab le via ReadProp erty. D evic e A may use alternate services where supp o rt for
ReadPro p erty x
The info rmatio n conveyed by the pro p erties in Tab le K- 2 can b e o therwise determined and as such need no t b e read
In order to ensure that p roducts that c laim sup po rt fo r this B IB B are c ap ab le of presenting ac curate data values acro ss
the full range of values fo r each data typ e, devic es claiming sup p o rt for this B IB B shall be ab le to meet the
requirements describ ed in Tab le K- 3 . In additio n, the device shall b e ab le to p resent all valid values fo r fields o f the
Lighting_Co mmand p ro p erty. The fo rmat is unrestric ted as lo ng as each valid value is distinguishab le.
F o r Character S tring pro p erty values, the A device shall b e cap ab le o f p resenting string values fo r sp ecific B ACnet
p ro p erties with at least the numb er of characters, indep endent o f their encoding, sp ecified in Tab le K- 4 .
The ab o ve p resentatio n requirements are no t required to b e ap p lied in all circumstances, b ut rather shall b e availab le
fo r every p rop erty value in the system. This sho uld allow a p roduct to restrict its p resentatio n under sp ecific
co nditio ns yet still allo w the user full ac cess to any sp ecific p ro p erty value.
The A device shall be cap ab le o f reading and p resenting all standard fo rms of the datatyp es as defined p er the A
Actio ns taken b y the A device when retrieval o f a value fo r disp lay fails are a lo cal matter.
D evic es claiming confo rmance to this B IB B are no t required to sup p ort presentatio n of ob j ects and p rop erties that are
intro duced in a Pro to c o l_Revisio n newer than that claimed by the A device.
A device c laiming sup p o rt for this B I B B is intero p erab le with devices that sup p o rt D S - RP- B and o ne o r mo re o f the
o b j ec ts listed in Tab le K- 1 .
of the lighting system. D evices claiming sup p o rt for this B IB B are no t exp ected to be cap ab le o f fully co nfiguring
lighting contro ller B ACnet devic es, altho ugh they are no t inherently restric ted fro m do ing so .
WritePro p erty x
D evic es claiming co nfo rmance to this B IB B shall be cap ab le of co mmanding and relinquishing standard
co mmandab le p rop erties at p rio rity 8 (o ther prio rities may also be sup p o rted) of tho se ob j ects lis ted in Tab le K- X3
Table K-X3. S tandard Prop erties That D S - LM- A D evices S hall B e Cap ab le o f Writing
Lighting_Co mmand
D evic es claiming sup p o rt fo r this B IB B shall b e c ap ab le o f writing values within the full range as defined in Tab le K-
6 . In additio n, the devic e shall b e ab le to manip ulate all of the fields o f the Lighting_Co mmand pro p erty.
D evic es c laiming co nfo rmance to this B IB B are no t required to supp o rt presentatio n and mo dificatio n o f o b j ects and
p ro p erties that are intro duced in a Pro to co l_Revisio n newer than that c laimed b y the A device.
A device claiming sup po rt for this B IB B is intero p erab le with devices that sup p ort D S - WP - B and sup p ort o ne or mo re
excluding Averaging, Co mmand, Program, Lo op , Accumulato r, Timer, and Pulse Co nverter o b j ects, where the
p ro p erty is no t required to b e read- only, or to which access is o therwise restricted b y the standard (e. g. , Lo g_B uffer) .
The A device shall be c ap ab le o f co mmanding and relinquishing standard co mmandab le p ro p erties at any p rio rity.
The A device may use alternate services where sup p ort for executio n o f the alternate service is supp o rted by the B
device.
WritePro p erty x
D evices claiming sup p o rt fo r this B IB B shall b e cap ab le o f writing values within the full range as defined in Tab le K-
6 . In additio n, the device shall b e ab le to manip ulate all of the fields o f the Lighting_Co mmand pro p erty.
The A devic e shall be cap ab le o f writing all standard fo rms o f the datatyp es as defined p er the A device’ s claimed
Pro to co l_Revisio n.
D evices claiming c o nfo rmance to this B IB B are no t required to supp o rt presentatio n and mo dificatio n o f o b j ects and
p ro p erties that are intro duced in a Pro to co l_Revisio n newer than that claimed b y the A device.
A devic e c laiming sup po rt for this B IB B is intero p erab le with devic es that sup p ort D S - WP - B and sup p ort o ne or mo re
[ Change Annex A ]
B ACnet Cross-Domain Advanced Operator Workstation (B-XAWS )
B ACnet Advanced Operator Workstation (B-AWS )
B ACnet Operator Workstation (B -OWS )
B ACnet Operator Display (B -OD)
...
B ACnet Access Control S ecurity Display (B -ACS D)
...
B ACnet Smart S ensor (B-S S )
...
[ Change Annex L ]
This annex p ro vides descrip tio ns o f “standardized” typ es o f B ACnet devices. Any device that imp lements all the
required B ACnet cap ab ilities fo r a p articular device typ e and intero p erab ility area may claim to b e a device of that
p articular typ e. D evic es may also p ro vide additio nal cap ab ilities and shall indicate these c ap ab ilities in their PICS .
• Lighting Operator Interfaces. This family is composed of B-XA WS, B-A LWS, and B-LOD.
• Life S afety O p erato r Interfac es. This family is c o mp o sed o f B - ALS WS , B - LS WS , and B - LS AP.
• Access Co ntro l O p erato r Interfaces. This family is co mpo sed o f B - XAWS , B - AAC WS , B - ACWS , and B -
ACS D .
• Lighting Control Stations. This family is composed of B-A LCS and B-LCS.
• Access Co ntro l Co ntro llers. This family is co mp o sed o f B -AAC C, and B - ACC.
• Misc ellaneo us. This family is co mp o sed o f B - RTR, B - GW, B - B B MD , B - ACD C, and B - ACC R.
...
that includes the functio nality o f the fo llo wing device p ro files:
D S - WG- A D S - WG- A
D S - ALO - A D S - ALO - A
S cheduling Trending
B-ALWS B-LOD
D M- D D B - A, B D M- D D B - A, B
D M- ANM- A
D M- AD M- A
D M- D O B - B D M- D O B - B
D M- D CC- A
D M- MTS - A
D M- O CD - A
D M- RD - A
D M- B R- A
devices.
The B - ALWS p ro file enab les the sp ecificatio n o f the fo llo wing:
D ata S haring
• Ab ility to mo nito r the value o f B ACnet o b j ects relevant fo r lighting, inc luding all required and o p tio nal p ro p erties
• Ab ility to c reate, delete, and co nfigure Lighting O utput, B inary Lighting O utput, and Channel o b j ec ts
• Alarm summarizatio n
• Ab ility to create, delete, and co nfigure Event Enro llment, No tificatio n Class, and No tificatio n Fo rwarder o b j ects
S cheduling
• D isp lay o f the start and sto p times (schedule) of scheduled devic es
Trending
• Ab ility to silence a device on the netwo rk that is transmitting erro neo us data
• Ab ility to synchro nize the time in devices acro ss the B ACnet internetwo rk at the request of the o p erato r
used fo r wall- mo unted disp lay devices, simp le web server gateways to B ACnet lighting devices, disp lays affixed to
B ACnet devices; handheld terminals o r o ther very simp le contro l statio ns.
The B - LO D p ro file enab les the sp ecific atio n o f the fo llo wing:
Data S haring
• No requirement
S cheduling
• No requirement
Trending
• No requirement
The fo llo wing tab le indic ates which B IB B s shall b e sup p orted by the device typ es o f this family, fo r each intero p erab ility
area.
D S - RPM- A
D S - WP- A D S - WP- A
D S - WPM- A
D S - WG- A
D S - ALO - A D S - LO - A
S c heduling Trending
B-ALCS B-LCS
D M- D D B - A, B D M- D D B - A, B
D M- D O B - B D M- D O B - B
D M- D CC- B D M- D CC- B
D M- TS - B
o r D M- UTC- B
A B - ALCS is any device that needs to interact with Lighting O utput, B inary Lighting O utp ut, and Channel ob j ects in
o ther devices fo r the p urp o se o f mo nito ring and/o r c ontro lling them. B - ALCS devices are no t Wo rkstatio ns and O p erato r
D isp lays. Instead, they are mo re limited devic es no netheless used fo r configuratio n. Examp les might include smart wall
switches/dimmers, scene p reset co nso les, etc. B - ALCS devic es differ fro m B - LCS devic es in B - ALCS ’ s ab ility to
Data S haring
• No requirement
S cheduling
• Ab ility to schedule outp ut actio ns, b o th in the lo cal device and in o ther devices, b o th b inary and analo g, b ased on date
and time
Trending
• No requirement
the p urp o se of mo nitoring and/o r co ntro lling them. B - LCS devic es are different from Wo rkstatio ns and O p erato r
D isp lays in that their interactio ns with humans are more limited. Examp les might inc lude smart wall switches/dimmers,
D ata S haring
• No requirement
S cheduling
• No requirement
Trending
• No requirement
area.
D S - WP- A, B D S - WP- B
D S - WG- E- B
D S - ALO - A D S - B LO - B
or
D S - LO - B
S cheduling Trending
B-LS B-LD
D M- D D B - A, B D M- D D B - B
D M- D O B - B D M- D O B - B
D M- D CC- B D M- D CC- B
D M- TS - B
or
D M- UTC- B
o b j ects with the ab ility to fo rward c hannel writes to o ther B ACnet devic es.
D ata S haring
• No requirement
S cheduling
• Ab ility to schedule outp ut actio ns, b o th in the lo c al devic e and in o ther devic es, b o th b inary and analo g, b ased on date
and time
Trending
• No requirement
Data S haring
• No requirement
S c heduling
• No requirement
Trending
• No requirement
The standard currently has no definitions fo r an intero p erab le co ntro ller and workstatio n b ased audit rep o rting and
lo gging.
This addendum adds a new Audit Rep o rter ob j ec t typ e and new audit no tificatio n services to rep o rt auditab le ac tio ns. A
new Audit Lo g o b j ect typ e and a new audit query service is added to lo g and retrieve audit no tific atio ns.
B o th B ACnet clients and servers are allo wed to rep o rt auditab le actio ns. S ervers rep o rt changes to lo c al o b j ec ts, clients
rep o rt successful and attemp ted changes alo ng with extra info rmation such as reaso n fo r change. The co nsumer o f the
lo gs will b e resp o nsib le for correlating the multip le entries fo r a single actio n.
Co nfiguratio n o f audit repo rting is sup p orted on a p er o b j ec t b asis with different levels o f auditing.
system.
B ACnet audit lo gging is made up o f fo ur acto rs: the c lient that requests the o p eration b eing lo gged (the o p eration
so urc e) , the server that p erforms the o p eratio n (the o p eratio n target) , the lo gger that sto res the audit reco rds, and the
viewer that c o nsumes the audit lo g. In this framewo rk, bo th the o p eration so urce and the o p eratio n target are given the
o p p ortunity to p ro vide audit log reco rds to the audit lo gger. This allo ws B ACnet devic es to p rovide these features:
1) audit lo gging when either the o p eratio n source or the o p eratio n target do es no t sup p o rt audit lo gging;
2) lo gging o f extended audit informatio n that is no t availab le for rep orting by the o p eration target;
3) reco rding o f failed actio ns by the o p eration so urce when the o p eratio n target do es no t respo nd;
4) reco rding o f failed actio ns by the o p eratio n target where unautho rized op eratio n so urces do no t log
The o p eratio n so urce generates audit lo g entries which desc rib e the o p eratio n it requested and whic h o p tio nally co ntain
extra info rmation inc luding the B ACnet o b j ect which is the so urce of the o p eratio n (if app lic ab le) , user identific atio n (if
The server generates audit log entries which describ e the o peratio n it has b een requested to p erfo rm.
The lo gger rec eives no tificatio ns fro m lo cal and remo te o p eratio n sources and o peratio n targets and p lac es the
1) an Audit Rep o rter o b j ec t in the o p eratio n so urce devic e whic h generates the audit no tific atio ns; and
2) the Audit_No tific atio n_Rec ip ient p rop erty in the op eratio n so urc e’ s D evice ob j ect.
2) Audit Rep o rter ob j ects which generate the audit no tific ations; and
3) the Audit_No tificatio n_Recip ient p rop erty in the op eratio n target’ s D evice o b j ec t.
The fo llo wing figures p rovide a diagrammatic o verview o f the architecture discussed in the rest o f this clause.
3
1
2 2
1
2 2
3
1
2
4 3
4 1
2 1) Source requests operation.
2) Target performs operation,
2 reports audit event to
forwarder, and returns result
Audit Forwarder Operation Target to source.
(with auditing 3) Source reports audit event to
support) forwarder.
4) Forwarders report audit
events to Audit Logger
fo rwarders.
2) a lo c al request fo r an o p eration typ e describ ed in Tab le 1 9 -Y3 , which is succ essfully p erfo rmed but which is
no t the result o f the no rmal op eratio n o f the o b j ect (fo r examp le, up dating o f an input o bj ect' s Present_Value
b ased o n reading o f the p hysical inp ut wo uld no t b e auditab le, b ut the setting o f the Present_Value o f a value
It is a lo c al matter whether o r no t an op eratio n target generates audit no tific atio ns fo r B ACnet requests fo r an op eration
typ e describ ed in Tab le 1 9 - Y3 , whic h fail. It is imp o rtant to c o nsider when such o p eratio ns will result in no tific atio ns as
this co uld fo rm the b asis of a denial of service attac k thro ugh the increased wo rklo ad and network traffic required to
O p eratio n S o urces generate audit no tificatio ns for the fo llo wing o p eratio ns (sub j ec t to filtering) :
When rep o rting a successful op eratio n, no result code is included in the audit no tificatio n. When rep o rting a failed
S uch a p ro duct is installed so that it is ab le to mo nito r all c o mmunications o f interest that o riginate with an o p eration
so urce (o r all op eratio n so urces) , o r all co mmunications destined fo r an op eratio n target (o r all o p eration targets) . When
B ACnet message s are detec ted which co ntain auditab le actio ns, the pro duct generates audit reco rds as if it were the
op eratio n source or the o p eratio n target device (dep ending on whic h device it is p erforming auditing fo r. )
The c o nfiguration and c o ntro l o f p ro ducts that pro vide suc h functio nality is o utside the scop e o f this standard.
In the mo st b asic case, there will be a single Audit Rep o rter o b j ect resp onsib le for all audit no tific atio ns. In comp lex
scenario s, a devic e may have multip le Audit Rep o rter o b j ects each generating audit no tificatio ns fo r a different set of
When a device sup po rts audit rep o rting and is a B ACnet c lient, exactly o ne Audit Rep o rter o b j ect shall have the
Audit_S o urce_Rep orter pro p erty set to TRUE and is used for co nfiguratio n o f o p eration source audit rep o rting. An Audit
Rep o rter o b j ec t with this flag set shall no t b e deletab le. If creatio n o f Audit Rep o rter o b j ects is sup p o rted by the device,
any created Audit Rep o rter o bj ects shall have the Audit_S o urce_Rep o rter flag set to F ALS E.
All write o p erations to an Audit Rep o rter o b j ect shall result in an audit no tification by the co ntaining device, if
Audit_Level is no t NO NE.
Audit Rep o rter o b j ects may op tio nally sup po rt delaying the sending o f audit no tific atio ns so that multip le no tificatio ns
can b e sent in a single request. The Maximum_S end_D elay p ro p erty limits ho w lo ng audit no tificatio ns may b e delayed.
Any device which sup po rts auditing shall co ntain at least o ne Audit Rep o rter ob j ect.
Auditing can b e co nfigured o n a p er Audit Rep o rter level and o n a p er o b j ect level. Gro up enab ling and disab ling o f audit
rep o rting is co ntro lled via the Audit_Level and Auditab le_Op eratio ns p ro p erties o f the Audit Rep o rter o b j ects.
Audit_Level co ntro ls the level o f audit rep o rting at the Audit Rep o rter or at the o b j ect level. When the Audit_Level
p ro p erty in the Audit Rep o rter o b j ect is NO NE, the Audit Rep o rter ob j ect shall no t generate any audit no tific atio ns, with
the excep tio n of generating a no tificatio n when its Audit_Level p ro p erty is mo dified. When the Audit_Level p ro p erty in
an o b j ect (o ther than an Audit Rep o rter o b j ect) is NO NE, the device shall no t generate any audit no tificatio ns fo r the
o b j ec t, with the excep tio n o f generating a no tific atio n when the o b j ect’ s Audit_Level is modified.
The Auditab le_O p eratio ns p ro p erty in an o b j ect co ntro ls which o p eratio ns on the obj ect an Audit Rep o rter o b j ect
generates audit no tificatio ns fo r. If the p ro p erty is no t p resent, then the Auditab le_O p eratio ns p rop erty in the asso ciated
Audit Rep o rter o b j ect is used instead. Irresp ec tive o f the value o f an Auditab le_O p eratio ns p rop erty, changes to an
Auditab le_O p eratio ns p ro p erty will always result in an audit no tificatio n by the server device if Audit_Level is no t
NO NE.
When a device is acting as an o p eratio n so urc e, the Auditab le_O p eratio ns p rop erty o f the Audit Rep o rter ob j ec t, with the
Audit_S o urce_Rep orter p rop erty set to TRUE, co ntro ls which o p eratio ns initiated by the device will be rep o rted. The
Auditab le_O p eratio ns p ro p erty o f the target o b j ect has no imp act o n the audit no tific atio ns generated by the o p eration
so urce.
The Audit_Prio rity_F ilter p ro p erty sp ec ifies the p rio rities fo r whic h audit no tificatio ns will be generated fo r write
o p eratio ns. Any auditab le write o p eration to the co mmandab le p ro p erty o f an o b j ec t with a p rio rity asso ciated with a bit
set to 0 in this p ro p erty shall no t result in an audit no tificatio n. F o r examp le, if b it 7 o f this p ro p erty is set and b it 1 0 is
no t set, a manual o verride at p rio rity 8 would result in an audit no tific ation, whereas a WritePro p erty request at p rio rity
11 wo uld no t (the difference in the b it numb ers versus the p rio rities in this examp le is due to b its b eing 0- b ased and
p rio rities b eing 1 - b ased). This p ro p erty has no effect on the auditing o f no n- write o p eratio ns no r on the auditing of
o p eratio ns on p ro p erties o ther than co mmandab le p rop erties. If this p ro p erty is no t p resent in an o b j ect with a
co mmandab le p ro p erty, then no co mmand prio rity b ased audit filtering will b e ap p lied. The p urp o se o f this p ro p erty is to
allo w no rmal co ntro l actio ns to o ccur without audit no tificatio ns b eing generated while ensuring that o verride actions are
audited.
The Audit_Level p ro p erty determines which p ro p erties in the o b j ect are auditab le. Irresp ective o f the value o f this
p ro p erty, changes to this p ro perty shall always result in an audit no tificatio n b y the server device.
O p eratio n Co mment
Rep o rter o b j ec t.
The B ACnetAuditLevel enumeratio n is extensib le p roviding a metho d fo r vendo rs to sp ecify new audit levels fo r o b j ects
that require them. No extensib le audit level value shall b e equivalent to NO NE (result in no auditab le o p erations o n the
o b j ect. )
F o r the audit level AUD IT_CO NF IG, it is a lo c al matter whether or no t any given pro p erty in an ob j ect is co nsidered a
co nfiguratio n p rop erty. This is a lo cal matter sp ecifically to allo w imp lementatio ns to make this designatio n b ased on the
S o urce Timestamp B ACnetTimeS tamp The time the o p eration was requested by the o p eratio n
so urc e.
no tific atio ns unless the so urce and target are the same
devic e.
Target Timestamp B ACnetTimeS tamp The time the o p eratio n was perfo rmed by the o p eratio n
target.
no tific atio ns unless the so urc e and target are the same
devic e.
p ro vided.
S o urce O b j ec t B ACnetO b j ec tIdentifier The ob j ect requesting the op eratio n. This field shall no t
S o urce Co mment CharacterS tring A human readab le descrip tio n of the o p eratio n. This
o p eratio n.
Target Co mment CharacterS tring A human readab le descrip tio n o f the op eratio n.
o p eratio n.
Invoke Id Unsigned8 The invo ke id fro m the service request that resulted in
reco rds.
S o urce User Id Unsigned1 6 The user p erfo rming the o p eratio n. The value in this field
this value.
availab le.
S o urce User Ro le Unsigned8 The ro le o f the user p erfo rming the o p eration. The value
p ro vided.
Target O b j ect B ACnetO b j ec tIdentifier The target o b j ect of the o p eratio n. This field shall be
Target Pro p erty B ACnetPro p ertyReference The target o f the o p eration if it is targeted at a p ro p erty.
Target Prio rity Unsigned(1 . . 1 6 ) F o r o p erations which inc lude a p rio rity (such as when a
Target Value AB S T RACT- S YNTAX. &Typ e For o p erations whic h include a value (such as when a
value.
Current Value AB S T RACT- S YNTAX. &Typ e When an o p eratio n inc ludes a value (suc h as when a
Result Erro r When the o p eratio n fails, this field shall be present and
B ACnet services to the B AC netAuditO p eratio n enumeratio n is sho wn in Tab le 1 9 - Y3 . When a service allo ws multip le
o b j ec t or p ro p erty targets (e. g. , ReadPro p ertyMultip le, WritePro p ertyMultip le, etc. ) , each target shall be rep o rted in a
READ ReadPro p erty When rep orting a file op eratio n, no 'Target Prop erty'
ReadRange
Ato micReadF ile This setting sho uld b e used with cautio n as it can result
WRITE WritePro p erty When rep orting a file op eratio n, no 'Target Pro p erty',
WritePro p ertyMultip le 'Target Value', o r ' Current Value' values are p ro vided.
Remo veListElement ' Current Value', and re- writing the p ro p erty has no side-
effects) .
D ELETE D eleteO b j ect No 'Target Pro p erty', 'Target Value', o r ' Current Value'
LIF E_S AF ETY LifeS afetyO p eratio n The 'Target Value' shall inc lude the 'Requesting Pro cess
ACKNO WLED GE_ALARM Ackno wledgeAlarm The 'Target Value' shall include the ‘ Event S tate
service.
service.
S ub scrib eCO VPro p erty B O O LEAN and indicates whether (TRUE) the o p eratio n
unsub scrip tio n. S ub scrip tio n timeo uts shall be rep o rted
NO TIFICATIO N Event No tific atio n Rec eip t of event no tification and CO V no tificatio n
The 'Target Pro p erty' shall be the Event_S tate p rop erty,
AUD ITING_F AILURE Used to rep o rt that audit reco rds were drop p ed.
The 'S o urc e D evice' and 'Target D evic e' fields are set to
GENERAL Any o ther actio ns that the devic e needs to rep o rt to the
audit lo g.
to lo cal reso urce co nstraints. When suc h a co nditio n exists, the device shall selec tively dro p audit rec o rds attemp ting to
keep the mo st imp o rtant reco rds fo r distrib ution to the audit lo gger. The device shall rep o rt to the audit logger the numb er
o f dro p p ed rec ords using an audit no tificatio n with an op eratio n o f AUD ITING_F AILURE.
Excep t fo r no tificatio ns mandated b y this standard fo r c hanges in audit settings, the relative p rio rity o f audit no tifications
is a lo cal matter, it is suggested that when drop p ing no tificatio ns, no n- mo dificatio n audit no tificatio ns sho uld b e dro p p ed
first (e. g. , audit op eratio n is READ , NO TIF ICATIO N, etc . ) . Audit no tific atio ns that are mandated b y this standard for
c hanges in audit settings shall be deemed to be the highest p rio rity reco rds and the newest o f these shall be the last
device is exp ected to have a large amount of sto rage dedicated to audit lo gging.
The general structure is that o ne or mo re Audit Log ob j ects exist in the audit lo gger into which received audit
no tificatio ns are p lac ed. It is a lo c al matter ho w many and which Audit Log o b j ec ts any p artic ular audit no tification is
p laced into with the excep tion that, fo r any sp ec ific o b j ect, there is at least o ne Audit Lo g o b j ect which contains the
Audit lo ggers differ fro m o ther lo ggers in that archiving o f audit lo g reco rds is acco mp lished b y o p eration so urces and
o p eratio n targets p ushing no tificatio ns to the lo gger and B UF F ER_RE AD Y is no t used to info rm archival lo ggers o f new
no tificatio n reco rds. Also , given that auditing sho uld no t be interrup ted, there is no sup p o rt for the S to p _When_F ull
functio n.
The audit forwarder co llec ts audit no tificatio ns from multiple requests into an Audit Lo g o b j ect and then fo rwards them
to a p arent audit lo gger. O nce fo rwarded succ essfully, audit no tificatio ns may be remo ved fro m the forwarder’ s Audit
Lo g ob j ec t.
Audit fo rwarders are no t required to sup p ort the audit querying functionality and as such are no t considered a so urce of
audit info rmatio n fo r audit rep o rting. The audit fo rwarder is simp ly used for reducing the imp act o f audit rep orting on
netwo rk usage.
Audit fo rwarders shall no t disc ard, or change, p arameter values in audit no tific atio ns fro m o ther devic es when
While audit fo rwarder func tionality can b e p laced in any device in the system, it is reco mmended that it b e p laced in
different audit loggers, there will b e two distinct reco rds o f the o p eratio n in two different audit lo ggers. If there is to b e a
co nso lidated lo g, then a hierarchy o f audit lo ggers shall b e setup . A co mp lete log with all audit rec o rd p airs will o nly b e
availab le in the top mo st audit lo gger in the hierarchy. The hierarc hy is achieved through the Memb er_O f p rop erty o f the
Audit Lo g o b j ect.
Given that values are sto red in Audit Lo gs, care sho uld be taken in co nfiguring access to Audit Lo g o b j ects so that
persistent: when used to describe property values, the property value is stored in non-volatile storage so as to survive device
22
A udit_Notification_Recipient BA CnetRecipient O
...
...
22
If p resent, this pro p erty shall be writab le.
...
x
This property shall be present if, and only if, the device supports audit reporting.
12.11.X1 Audit_Notification_Recipient
This pro p erty, of typ e B ACnetRecip ient, sp ecifies the audit lo gging device to which audit no tificatio ns are sent.
When this p ro p erty is changed, an audit no tific atio n shall be generated and it shall b e either glo b ally b ro adcast, o r sent to
b o th the o riginal audit no tificatio n rec ip ient and the new audit no tificatio n rec ip ient.
settings fo r a B ACnet device whic h rep orts auditab le actio ns. B ACnet devic es which rep ort auditab le ac tions shall
co ntain at least o ne Audit Rep o rter ob j ec t. A detailed descrip tio n o f B ACnet audit rep o rting can b e found in Clause 1 9 . Y.
Audit Rep o rter ob j ects may o p tio nally supp o rt intrinsic rep o rting to fac ilitate the reporting o f fault conditio ns. Audit
Rep orter o b j ec ts that sup po rt intrinsic rep o rting shall ap p ly the NO NE event algorithm.
The Audit Rep o rter o b j ec t and its p ro p erties are summarized in Tab le 1 2 - X and describ ed in detail in this c lause.
Audit_Level B ACnetAuditLevel R
1 ,2
Maximum_S end_D elay Unsigned O
1 ,2
S end_No w B O O LEAN O
3 ,5
Event_D etectio n_Enab le B O O LEAN O
3 ,5
No tificatio n_Class Unsigned O
3 ,5
Event_Enab le B ACnetEventTransitio nB its O
3 ,5
Acked_ Transitio ns B ACnetEventTransitio nB its O
3 ,5
No tify_Typ e B ACnetNo tifyTyp e O
3 ,5
Event_Time_S tamp s B ACnetARRAY[ 3 ] o f B ACnetTimeS tamp O
4, 5
Event_Message_Texts B ACnetARRAY[ 3 ] of CharacterS tring O
5
Event_Message_Texts_Co nfig B ACnetARRAY[ 3 ] o f CharacterS tring O
1
If p resent, these p ro p erties shall b e writab le.
2
If the ob j ect sup p orts delaying o f audit no tificatio ns, then these p ro p erties shall b e p resent.
3
These p ro p erties are required if the o b j ect supp o rts intrinsic rep o rting.
4
This p ro p erty, if p resent, is required to b e read- only.
5
These p ro p erties shall b e p resent o nly if the ob j ect sup p orts intrinsic rep o rting.
12.X.1 Object_Identifier
This p ro p erty, o f typ e B ACnetO b j ectIdentifier, is a numeric co de that is used to identify the o b j ect. It shall be unique
12.X.2 Object_Name
This p ro p erty, o f typ e CharacterS tring, shall rep resent a name fo r the ob j ect that is unique within the B ACnet device that
maintains it. The minimum length o f the string shall be o ne character. The set o f characters used in the O b j ect_Name
12.X.3 Object_Type
This prop erty, o f typ e B ACnetO b j ectTyp e, indicates memb ership in a p articular o b j ec t typ e class. The value o f this
12.X.4 Description
This p ro p erty, of typ e CharacterS tring, is a string o f p rintab le c haracters who se c ontent is no t restricted.
12.X.5 Status_Flags
This p ro p erty, of typ e B ACnetS tatusF lag s, rep resents fo ur B o o lean flags that indicate the general " health" o f the Audit
Rep o rter o b j ec t. Three o f the flags are asso ciated with the values o f o ther pro p erties o f this o b j ect. A mo re detailed status
co uld b e determined by reading the p rop erties that are linked to these flags. The relatio nship b etween individual flags is
where:
IN_ALARM Lo gical TRUE (1 ) if the Event_S tate p ro p erty is p resent and do es no t have a value o f NO RMAL,
F AULT Lo gical TRUE (1 ) if the Reliab ility p ro p erty is p resent and do es no t have a value of
If the o b j ect supp o rts event rep o rting, then this p ro p erty shall be the p S tatusF lags p arameter fo r the o b j ec t's event
algo rithm. S ee Clause 1 3 . 3 for event algorithm p arameter descrip tio ns.
12.X.6 Reliability
The Reliab ility p ro p erty, o f typ e B ACnetReliab ility, p ro vides an indicatio n that the p ro p erties o f the Audit Rep o rter
o b j ect are in a co nsistent state and whether the ob j ect is o p erating p rop erly.
If this Audit Rep o rter o b j ect is enab led and configured to monito r o ne or mo re ob j ects that ano ther enab led Audit
Rep o rter o b j ec t is also co nfigured to mo nito r, then this p ro p erty shall have the value CO NF IGURATIO N_ERRO R.
If the Audit Rep o rter ob j ect is enab led and the device is unab le to reso lve the Audit_No tificatio n_Recip ient device, then
If the Audit Rep o rter o b j ect fails to successfully send audit no tificatio ns, or fails to receive ackno wledgements when
using Co nfirmedAuditNo tificatio n requests, the Reliab ility p ro p erty shall b e set to CO MMUNICATIO N_F AILURE. The
existence o f this reliab ility co nditio n shall no t sto p the ob j ect fro m attemp ting to send audit no tificatio ns. It is a lo cal
matter whether or no t the o b j ect will retry sending o f audit no tificatio ns.
12.X.7 Event_State
The Event_S tate p rop erty, o f typ e B ACnetEventS tate, is included in o rder to pro vide a way to determine whether this
o b j ect has an active event state asso ciated with it (see Clause 1 3 . 2. 2 . 1 ) . If the o b j ect sup p o rts event repo rting, then the
Event_S tate p ro p erty shall indic ate the event state o f the ob j ect. If the o b j ect do es no t sup p ort event repo rting, then the
12.X.8 Audit_Level
This p ro p erty, o f typ e B ACnetAuditLevel, sp ec ifies the level o f auditing to p erfo rm fo r all o b j ec ts this Audit Rep o rter
o b j ect rep orts fo r which do no t have an Audit_Level p ro p erty, or for which the Audit_Level p ro p erty is set to
D EF AULT.
12.X.9 Audit_Source_Reporter
This read- o nly p rop erty, o f typ e B O O LEAN, indicates whe ther (TRUE) o r no t (F ALS E) this audit rep o rter ob j ec t is the
rep o rter o b j ect whic h co ntro ls o p eratio n source audit rep orting.
If this p rop erty is TRUE, this o b j ect generates no tific atio ns fo r auditab le o p eratio ns initiated b y this device.
12.X.10 Auditable_Operations
This p ro p erty, of typ e B ACnetAuditO p eratio nF lags, sp ecifies the o p eratio ns that the o b j ect will rep o rt.
If no t co nfigurab le, the values o f the READ , NO TIF I CAT IO N, and S UB S CRIPTIO N b its shall be 0, and the WRITE,
12.X.11 Audit_Priority_Filter
This p ro p erty, of typ e B ACnetPrio rityF ilter, sp ec ifies the auditab le co mmand prio rities fo r write o p erations on the
co mmandab le p ro p erty o f the o b j ects fo r which this o b j ect p erforms audit rep o rting. B its which are set indicate the
p rio rities fo r which audit no tificatio ns will b e generated. The b it numb er is 1 less than the p rio rity it is asso ciated with
12.X.12 Issue_Confirmed_Notifications
This p ro p erty, o f typ e B O O LEAN, shall co nvey whether co nfirmed (TRUE) o r unco nfirmed (F ALS E) audit no tific atio ns
shall b e issued.
12.X.13 Monitored_Objects
This p rop erty, o f typ e B ACnetARRAY o f B ACnetO b j ec tS e lecto r, is used to indic ate the o b j ects that the Audit Rep o rter
If the array is o f length 0 , o r all entries in the array are NULL entries, then the Audit Rep o rter o b j ect do es no t generate
Entries o f typ e B ACnetO b j ectIdentifier indicate sp ecific o b j ects that are rep o rtab le b y the Audit Rep o rter o b j ect. Entries
o f typ e B ACnetO b j ectTyp e indicate that all o b j ec ts o f the sp ec ified typ e are rep o rtab le by the Audit Rep o rter o b j ect.
If there are multip le Audit Rep o rter o b j ects whic h are co nfigured to repo rt fo r a sp ecific o b j ect, only the o ne with the
lo west o b j ect instance shall generate no tificatio ns fo r the ob j ect. This allo ws a generic catch- all Audit Rep o rter o b j ect to
be c reated with a high instanc e numb er and lo wer instance numb er Audit Rep o rter o b j ects which p rovide custo mized
12.X.14 Maximum_Send_Delay
This p ro p erty, o f typ e Unsigned, sp ecifies the maximum amo unt of time, in seco nds, that the Audit Rep o rter ob j ect will
delay sending audit no tificatio ns fo r the p urp o se o f b atc h sending no tificatio ns.
The value in this p ro p erty does no t mandate that no tificatio ns shall be delayed, b ut rather allo ws the o b j ect to delay
12.X.15 Send_Now
This p rop erty, o f typ e B O O LEAN, when written to TRUE, fo rces the Audit Rep o rter ob j ect to send any and all audit
no tific atio ns that are b eing delayed. After all delayed audit no tificatio ns are sent, the Audit Rep o rter o b j ect resets the
p ro p erty to FALS E.
It is a lo cal matter whether o r no t the Audit Rep o rter o b j ect sto p s attemp ting to immediately send its delayed no tific atio ns
12.X.16 Event_Detection_Enable
This p ro p erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (F ALS E) intrinsic rep o rting is enab led in the o b j ect
and co ntro ls whether (TRUE) o r no t (F ALS E) the o b j ec t will b e co nsidered b y event summarizatio n servic es.
This p ro p erty is exp ected to be set during system configuratio n and is no t exp ected to change dynamically.
When this p ro p erty is F ALS E, Event_S tate shall be NO RMAL, and the p ro p erties Acked_Transitio ns,
Event_Time_S tamp s, and Event_Message_Texts shall b e equal to their resp ective initial c o nditio ns.
12.X.17 Notification_Class
This p rop erty, o f typ e Unsigned, shall sp ecify the instance o f the No tificatio n Class o b j ec t to use fo r event-no tification-
distrib utio n.
12.X.18 Event_Enable
This p ro p erty, of typ e B ACnetEventTransitio nB its, shall co nvey three flags that separately enab le and disab le the
distrib utio n of TO _O F F NO RMAL, TO _F AULT, and TO_NO RMAL no tificatio ns (see Clause 1 3 . 2 . 5 ). A device is
allo wed to restrict the set o f sup p o rted values for this p rop erty b ut shall sup po rt (T, T, T) at a minimum.
12.X.19 Acked_Transitions
This read- o nly p rop erty, of typ e B ACnetEventTransitio nB its, shall co nvey three flags that sep arately indicate the
ackno wledgment state for TO _O F F NO RMAL, TO _FAULT, and TO _NO RMAL events (see Clause 1 3 . 2 . 2. 1 . 5 ). Each
flag shall have the value TRUE if no event of that typ e has ever o ccurred fo r the o b j ec t.
12.X.20 Notify_Type
This p rop erty, o f typ e B ACnetNo tifyTyp e, shall c o nvey whether the no tific atio ns generated by the o b j ect sho uld be
Events or Alarms. The value of the p ro p erty is used as the value of the 'No tify Typ e' service p arameter in event
12.X.21 Event_Time_Stamps
This read- o nly p ro p erty, of typ e B ACnetARRAY[ 3 ] of B ACnetTimeS tamp , shall c o nvey the times of the last
TO _O FF NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2. 2 . 1 ) . Timestamp s o f typ e Time o r Date
shall have X'F F ' in each o ctet, and S equence Numb er timestamp s shall have the value 0 if no event o f that typ e has ever
o ccurred fo r the ob j ec t.
12.X.22 Event_Message_Texts
This read- only p rop erty, o f typ e B ACnetARRAY[ 3 ] o f CharacterS tring, shall co nvey the message text values of the last
TO _O F F NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2 . 2 . 1 ). If a p articular typ e o f event has yet
to o ccur, an emp ty string shall b e sto red in the resp ective array element.
12.X.23 Event_Message_Texts_Config
This p rop erty, o f typ e B ACnetARRAY[ 3 ] o f Charac terS tring, co ntains the character strings which are the b asis fo r the
'Me ssage Text' p arameter fo r the event no tific atio ns of TO _O F FNO RMAL, TO _F AULT, and TO _NO RMAL events,
resp ectively, generated by this o b j ect. The character strings may o p tio nally co ntain p ro p rietary text sub stitutio n c o des to
inc o rp orate dynamic info rmatio n suc h as date and time or o ther informatio n.
12.X.24 Reliability_Evaluation_Inhibit
This p rop erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (F ALS E) reliab ility- evaluatio n is disab led in the
o b j ec t. This p ro p erty is a runtime o verride that allo ws temp orary disab ling o f reliab ility- evaluatio n.
When reliab ility- evaluatio n is disab led, the Reliab ility p rop erty shall have the value NO _F AULT_D ETECTED unless
O ut_O f_S ervice is TRUE and an alternate value has b een written to the Reliab ility p ro p erty.
12.X.25 Property_List
This read-o nly p ro p erty is a B ACnetARRAY o f p rop erty identifiers, o ne pro p erty identifier for each pro p erty that exists
within the o b j ec t. The O b j ect_Name, O b j ect_Typ e, O b j ect_Identifier, and Pro p erty_List p ro p erties are no t included in
the list.
12.X.26 Tags
This p rop erty, of typ e B ACnetARRAY o f B ACnetNameValue, is a co llec tio n o f tags for the o b j ect. S ee Clause Y. 1 . 4
fo r restrictio ns o n the string values used fo r the names o f these tag and fo r a descrip tion of tagging and the mechanism b y
Each entry in the array is a B ACnetNameValue co nstruc t which c o nsists o f the tag name and an o p tional value. If the tag
is defined to b e a " semantic tag" then it has no value, and the " value" field o f the B ACnetNameValue shall b e ab sent.
While so me tags may be known in advance when a device is manufactured, it is recommended that imp lementations
co nsider that this kind of info rmatio n might no t be known until a device is dep loyed and to p rovide a means of
12.X.27 Profile_Location
This p ro p erty, o f typ e CharacterS tring, is the URI o f the lo catio n o f an xdd file (S ee Claus e X. 2 ) co ntaining the definition
of the CS ML typ e sp ec ified b y the Profile_Name p ro p erty and po ssib le o ther informatio n (S ee Annex X) . The URI is
restricted to using o nly the " http " , " http s" , and " b acnet" URI schemes. S ee Clause Q . 8 for the definitio n o f the " b acnet"
URI scheme.
If a Pro file_Lo c ation value is no t p rovided fo r a p articular o b j ect, then the c lient shall use the Pro file_Lo catio n of the
12.X.28 Profile_Name
This p ro p erty, of typ e CharacterS tring, is the name of an o b j ec t p ro file to which this o b j ect c o nforms. To ensure
uniqueness, a p rofile name shall b egin with a vendo r identifier c o de (see Clause 2 3 ) in base- 1 0 integer format, fo llo wed
by a dash. All sub sequent characters are administered b y the o rganizatio n registered with that vendor identifier code. The
vendor identifier code that prefixes the p ro file name shall indic ate the o rganizatio n that p ub lishes and maintains the
pro file. This vendo r identifier need no t have any relatio nship to the vendo r identifier of the devic e within which the
ob j ec t resides.
A p ro file defines a set o f additio nal p rop erties, b ehavio r, and/o r requirements fo r this o b j ec t b eyo nd tho se sp ecified here.
This standard defines o nly the fo rmat o f the names of p rofiles. If the Profile_Lo catio n p ro p erty o f this o b j ect or the
Devic e o b j ec t is p resent and no nemp ty, then the value of this p ro p erty shall b e the name o f a CS ML typ e defined in an
reco rd in an internal b uffer fo r sub sequent retrieval. Each timestamp ed b uffer entry is called an audit lo g " reco rd. "
Each Audit Lo g o b j ect maintains an internal, p ersistent, o p tio nally fixed- size log buffer. This lo g b uffer fills or gro ws as
audit lo g reco rds are added. If the lo g b uffer b eco mes full, the least recent lo g reco rds are o verwritten when new log
reco rds are added. Lo g b uffers are transferred as a lis t o f B ACnetAuditLo gReco rd values using the ReadRange and
AuditLo gQ uery services. Each lo g reco rd in the lo g b uffer has an imp lied sequence numb er that is equal to the value o f
the To tal_Reco rd_Co unt pro perty immediately after the reco rd is added. S ee Clause 1 9 . Y fo r a full descrip tion o f how
As reco rds are added into the lo g, the Audit Lo g o b j ect will sc an existing entries fo r a matching reco rd. A reco rd is a
match if:
1) the rec o rd contains the timestamp fo r the op p o site ac to r (the reco rd co ntains the o p eratio n so urce
2) the o p eration- so urce, o p eration, invoke- id, target- device, target- p rop erty, are all equal;
3) if the user- id, user- ro le, target-value fields are pro vided in b oth no tific atio ns then they are equal; and
4) if the so urce- timestamp and target- timestamp values are ap p roximately equal (+/- APD U_Timeo ut *
2).
If a matc h is fo und, the existing lo g record is up dated. O therwise, a new reco rd is created. If a match is fo und, and it
already contains b o th an op eratio n so urce and an o p eratio n target p ortio n, then the no tificatio n is dro pp ed. When creating
a new reco rd, tho se fields which are no t sup p lied in the no tificatio n (such as the 'S o urce Timestamp ' when a server
no tific atio n is rec eived) shall b e ab sent fro m the record. When updating an existing record, tho se fields no t supp lied in
the o riginal no tificatio n are up dated fro m the new no tificatio n, if p resent. F o r the 'Current Value' field, a value p ro vided
by the o p eratio n target device shall always take p recedence o ver a value p rovided by an o p eratio n so urce device. As
suc h, if the values p rovided in the p eer no tificatio ns differ, the o p eration target value shall b e the one used in the reco rd.
Lo gging may b e enab led and disab led thro ugh the Enab le pro p erty. Audit Lo g enab ling and disab ling is reco rded in the
audit lo g b uffer.
Unlike o ther log ob j ects, Audit Lo g ob j ects do no t use the B UF FER_READ Y event algo rithm.
The acquisitio n o f log records b y remo te devices has no effect up o n the state o f the Audit Lo g o b j ect itself. This allo ws
co mp letely indep endent, b ut pro p erly sequential, ac cess to its lo g reco rds b y all remo te devices. Any remo te device can
Audit Lo g ob j ects may o p tionally sup po rt fo rwarding o f audit no tific atio ns to “p arent” audit lo gs. This functio nality
imp ro ves the reliab ility o f the audit system b y allo wing intermediaries to b uffer audit no tificatio ns in the case where the
ultimate audit lo gger is o ffline fo r a sho rt p eriod o f time. It is exp ec ted that intermediaries b e cap ab le o f sto ring a larger
numb er o f rec o rds than devices which rep o rt auditab le actions. It is also useful for b uffering o f audit no tificatio ns so they
can be sent in bulk to the p arent audit log. When o p erating in this mo de, with the D elete_O n_Fo rward p ro p erty set to
TRUE, the o b j ect is no t required to p erfo rm audit no tification matching and co mb ining.
Audit Lo g o b j ects may o p tionally sup p o rt intrinsic rep orting to facilitate the rep o rting o f fault co nditions. Audit Log
ob j ec ts that sup p o rt intrinsic rep o rting shall app ly the NO NE event algorithm.
The Audit Log o b j ect and its pro p erties are summarized in Tab le 1 2 - Y and describ ed in detail in this sub clause.
Enab le B O O LEAN W
1
Memb er_O f B ACnetD eviceO b j ectReference O
1 ,2
D elete_O n_F o rward B O O LEAN O
1
Issue_Co nfirmed_No tifications B O O LEAN O
3 ,4
Event_D etectio n_Enab le B O O LEAN O
3 ,4
No tificatio n_Class Unsigned O
3 ,4
Event_Enab le B ACnetEventTransitio nB its O
3 ,4
Acked_Transitio ns B ACnetEventTransitio nB its O
3 ,4
No tify_Typ e B ACnetNo tifyTyp e O
3 ,4
Event_Time_S tamp s B ACnetARRAY[ 3 ] o f B ACnetTimeS tamp O
4, 5
Event_Message_Texts B ACnetARRAY[ 3 ] o f CharacterS tring O
4
Event_Message_Texts_Co nfig B ACnetARRAY[ 3 ] o f CharacterS tring O
3 ,4
Event_D etectio n_Enab le B O O LEAN O
6
Reliab ility_Evaluatio n_Inhib it B O O LEAN O
7
Audit_Le vel B ACnetAuditLevel O
7
Auditab le_O p eratio ns B ACnetAuditO p eratio nF lags O
1
These p ro p erties shall b e p resent if the ob j ect sup p orts fo rwarding.
2
This p ro p erty shall b e read- only and TRUE if the o b j ect do es no t sup p ort matching and comb ining o f
reco rds.
3
These p ro p erties are required if the o b j ect supp o rts intrinsic rep o rting.
4
These p ro p erties shall b e p resent o nly if the ob j ect sup p orts intrinsic rep o rting.
5
This p ro p erty, if p resent, is required to b e read- only.
6
If this p rop erty is p resent, then the Reliab ility p ro p erty shall b e p resent.
7
This p ro p erty shall b e present o nly if the device supp o rts audit rep o rting.
12.Y.1 Object_Identifier
This p ro p erty, o f typ e B ACnetO b j ectIdentifier, is a numeric co de that is used to identify the o b j ect. It shall be unique
12.Y.2 Object_Name
This p ro p erty, o f typ e CharacterS tring, shall rep resent a name fo r the ob j ect that is unique within the B ACnet device that
maintains it. The minimum length o f the string shall be o ne charac ter. The set o f characters used in the O b j ect_Name
12.Y.3 Object_Type
This p rop erty, o f typ e B ACnetO b j ectTyp e, indic ates membership in a p articular o b j ec t typ e class. The value o f this
12.Y.4 Property_List
This read-o nly p ro p erty is a B ACnetARRAY o f p rop erty identifiers, o ne p ro p erty identifier for each p ro p erty that exists
within the o b j ect. The O b j ect_Name, O b j ec t_Typ e, O b j ect_Identifier, and Pro p erty_List p ro p erties are no t included in
the list.
12.Y.5 Description
This p ro p erty, of typ e CharacterS tring, is a string o f p rintab le characters who se content is no t restricted.
12.Y.6 Status_Flags
This p ro p erty, o f typ e B ACnetS tatusFlags, rep resents fo ur B o o lean flags that indic ate the general " health" o f an Audit
Lo g ob j ec t. The IN_ALARM and FAULT flags are asso ciated with the values of o ther p ro p erties o f this o b j ect. A more
detailed status may be determined by reading the p ro p erties that are linked to these flags. The relationship b etween
where:
IN_ALARM Lo gic al FALS E (0 ) if the Event_S tate p ro p erty has a value o f NO RMAL, o therwise lo gical TRUE
(1 ) .
F AULT Lo gical TRUE (1 ) if the Reliab ility p ro p erty is p resent and do es no t have a value of
If the o b j ect supp o rts event rep o rting, then this p ro p erty shall be the p S tatusF lags p arameter fo r the o b j ect's event
algo rithm. S ee Clause 1 3 . 3 for event algorithm p arameter desc rip tio ns.
12.Y.7 Event_State
The Event_S tate p rop erty, o f typ e B ACnetEventS tate, is inc luded in o rder to p ro vide a way to determine whether this
o b j ect has an ac tive event state asso ciated with it (see Clause 1 3 . 2. 2 . 1 ) . If the o b j ect sup p o rts event repo rting, then the
Event_S tate p ro p erty shall indicate the event state o f the ob j ect. If the o b j ec t do es no t sup p ort event repo rting, then the
12.Y.8 Reliability
The Reliab ility p ro p erty, o f typ e B ACnetReliab ility, p ro vides an indicatio n that the p ro p erties o f the Audit Lo g o b j ect are
If the Audit Lo g o b j ect is enab led and co nfigured to fo rward audit no tificatio ns, and the device is unab le to reso lve the
Memb er_O f device, then this p ro p erty shall have the value CO NF IGURATIO N_ERRO R.
If the Audit Log o b j ect, when co nfigured to fo rward audit no tific atio ns, fails to succ essfully send audit no tificatio ns, or
fails to rec eive ac kno wledgements when using Co nfirmedAuditNo tificatio n requests, the Reliab ility p ro p erty shall b e s et
to CO MMUNIC ATIO N_FAI LURE. The existence o f this reliab ility c o nditio n shall no t sto p the o b j ec t fro m attemp ting
to send audit no tific atio ns. It is a lo cal matter whether or no t the o b j ect will retry sending of audit no tificatio ns.
12.Y.9 Enable
This p ro p erty, o f typ e B O O LEAN, indicates and co ntro ls whether (TRUE) or no t (F ALS E) lo gging is enab led. Logging
o c curs if and o nly if Enab le is TRUE. Lo g_B uffer reco rds o f typ e lo g- status are recorded witho ut regard to the value of
12.Y.10 Buffer_Size
This p ro p erty, o f typ e Unsigned3 2 , shall sp ecify the maximum numb er of lo g reco rds the lo g buffer may ho ld. If
writab le, it may no t b e written when Enab le is TRUE. The disp o sitio n o f existing lo g reco rds when B uffer_S ize is written
is a lo cal matter.
32
Fo r p ro ducts that sup p o rt very large lo g o b j ects, the value 2 -1 is reserved to indicate that the b uffer size is unkno wn and
12.Y.11 Log_Buffer
This p ro p erty, of typ e B ACnetLIS T of B ACnetAuditLo gReco rd, is a list of timestamp ed lo g reco rds of datatype
B ACnetAuditLo gRec o rd, each o f whic h co nveys the audit no tific atio n p arameters or status c hanges in the Audit Lo g
Timestamp The lo c al date and time that the entry was p lac ed into the audit lo g.
Lo g D atum The audit no tific atio n info rmatio n, o r a change in status o r op eratio n of the Audit Lo g o b j ec t itself.
lo g- status This c ho ice represents a c hange in the status or o p eratio n of the Audit Log ob j ect.
Whenever o ne o f the events rep resented by the flags listed b elo w o cc urs, a lo g reco rd
LO G_D IS AB LED This flag is c hanged whenever co llec tio n o f log reco rds b y the
B UFF E R_PURGED This flag shall be set to TRUE whenever the lo g b uffer is
p laced into the lo g buffer even if lo gging is disab led, the lo cal
LO G_INTERRUPTED This flag indicates that the co llectio n o f log reco rds b y the Audit
audit- no tificatio n This cho ice rep resents an audit no tificatio n that was received. It consists o f the audit
info rmation fro m the o peratio n so urce and o p eratio n target generated
Co nfirmedAuditNo tificatio n and/o r Unco nfirmedAuditNo tificatio n reques ts. If the audit
no tificatio n was generated locally, this cho ice shall ho ld what wo uld be rec eived if the
time- change This cho ice represents a c hange in the clo ck setting in the device, reco rds the numb er of
seco nds and fraction o f a sec ond b y which the clo c k changed. If, and o nly if, the numb er
is no t kno wn, such as when the clo c k is initialized fo r the first time, the value rec orded
shall b e 0 . 0 . This lo g rec o rd shall b e reco rded after c hanging the lo cal time o f the device,
and the timestamp shall reflect the new lo c al time of the device.
Also asso c iated with each lo g reco rd is an imp lied sequence numb er, the value o f which is equal to To tal_Reco rd_Co unt
at the p o int where the lo g rec o rd has b een added into the lo g buffer and To tal_Rec o rd_Co unt has b een adj usted
acc o rdingly. All clients shall be ab le to co rrectly handle the case where the Audit Log o b j ect is reset such that its
To tal_Reco rd_Co unt is returned to zero and also the case where To tal_Rec o rd_Co unt has wrap p ed b ack to o ne. While no
intero p erab le metho d is p ro vided fo r resetting the Audit Log o b j ec t, catastro p hic failures can result in rep lac ement of the
lo gging devic e whic h will b e equivalent to resetting o f the o b j ect. It is fo r situatio ns suc h as this that c lients need to b e
p rep ared.
The lo g b uffer is no t netwo rk accessib le excep t thro ugh the use o f the ReadRange and AuditLo gQ uery servic es in o rder
12.Y.12 Record_Count
This read- o nly p rop erty, o f typ e Unsigned6 4 , shall rep resent the number o f log rec ords currently resident in the log
b uffer. Unlike o ther log o b j ect typ es, this p rop erty is no t writab le as audit lo gs are never exp ected to b e reset.
12.Y.13 Total_Record_Count
This p ro p erty, o f typ e Unsigned6 4 , shall rep resent the to tal numb er o f lo g reco rds co llected b y the Audit Lo g o b j ec t since
64
creatio n. When the value of To tal_Rec o rd_Co unt reaches its maximum po ssib le value o f 2 - 1, the next value it takes
shall b e o ne. Onc e this value has wrap p ed to o ne, its semantic value (the to tal numb er of lo g records co llected) has b een
lo st.
12.Y.14 Member_Of
This p rop erty, o f typ e B ACnetD eviceO b j ectReference, shall indic ate the device which this Audit Lo g o b j ec t fo rwards all
All lo g reco rds co llected b y the Audit Lo g shall b e sent to the referenced device via audit no tificatio n requests.
12.Y.15 Delete_On_Forward
This p ro p erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (FALS E) the no tificatio ns will b e remo ved fro m the
12.Y.16 Issue_Confirmed_Notifications
This p ro p erty, of typ e B O O LEAN, shall co nvey whether confirmed (TRUE) o r unco nfirmed (FALS E) audit no tific atio ns
12.Y.17 Event_Detection_Enable
This p ro p erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (F ALS E) intrinsic rep o rting is enab led in the o b j ect
and co ntro ls whether (TRUE) o r no t (F ALS E) the o b j ec t will b e co nsidered b y event summarizatio n services.
This p ro p erty is exp ected to be set during system configuratio n and is no t exp ected to c hange dynamically.
When this p ro p erty is F ALS E, Event_S tate shall be NO RMAL, and the p ro perties Acked_Transitio ns,
Event_Time_S tamp s, and Event_Message_Texts shall b e equal to their resp ective initial c o nditio ns.
12.Y.18 Notification_Class
This p rop erty, o f typ e Unsigned, shall sp ecify the instance o f the No tificatio n Class o b j ect to use fo r event-no tification-
distrib utio n.
12.Y.19 Event_Enable
This p ro p erty, of typ e B ACnetEventTransitio nB its, shall co nvey three flags that separately enab le and disab le the
distrib utio n of TO _O FF NO RMAL, TO _F AULT, and TO_NO RMAL no tific atio ns (see Clause 1 3 . 2 . 5 ). A device is
allo wed to restrict the set o f sup p o rted values for this p rop erty b ut shall sup po rt (T, T, T) at a minimum.
12.Y.20 Acked_Transitions
This read- o nly p rop erty, of typ e B ACnetEventTransitio nB its, shall co nvey three flags that sep arately indicate the
ac kno wledgment state for TO _O F F NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2 . 2. 1 . 5 ) . Each
flag shall have the value TRUE if no event of that typ e has ever o cc urred fo r the o b j ect.
12.Y.21 Notify_Type
This p rop erty, o f typ e B ACnetNo tifyTyp e, shall co nvey whether the no tific atio ns generated by the o b j ect sho uld be
Events or Alarms. The value of the p ro p erty is used as the value of the 'No tify Typ e' service p arameter in event
12.Y.22 Event_Time_Stamps
This read- o nly p ro p erty, of typ e B ACnetARRAY[ 3 ] of B ACnetTimeS tamp , shall co nvey the times of the last
TO _O F F NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2. 2 . 1 ) . Timestamp s o f typ e Time o r Date
shall have X'F F ' in each o c tet, and S equenc e Numb er timestamp s shall have the value 0 if no event o f that typ e has ever
12.Y.23 Event_Message_Texts
This read- only p rop erty, o f typ e B ACnetARRAY[ 3 ] o f CharacterS tring, shall co nvey the message text values of the last
TO _O F F NO RMAL, TO _F AULT, and TO _NO RMAL events (see Clause 1 3 . 2 . 2 . 1 ). If a p articular typ e o f event has yet
to o ccur, an emp ty string shall b e sto red in the resp ec tive array element.
12.Y.24 Event_Message_Texts_Config
This p rop erty, o f typ e B ACnetARRAY[ 3 ] o f CharacterS tring, co ntains the character strings whic h are the b asis fo r the
'Me ssage Text' p arameter fo r the event no tificatio ns of TO _O F F NO RMAL, TO _FAULT, and TO _NO RMAL events,
resp ec tively, generated by this o b j ect. The character strings may o p tionally co ntain p ro p rietary text sub stitutio n co des to
inco rp orate dynamic info rmatio n such as date and time o r o ther info rmatio n.
12.Y.25 Event_Detection_Enable
This p ro p erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (F ALS E) intrinsic rep o rting is enab led in the o b j ect
and c ontro ls whether (TRUE) o r no t (FALS E) the o b j ect will b e co nsidered b y event summarizatio n servic es.
This p ro p erty is exp ected to be set during system configuratio n and is no t exp ected to change dynamically.
When this p ro p erty is F ALS E, Event_S tate shall be NO RMAL, and the p ro p erties Acked_Transitio ns,
Event_Time_S tamp s, and Event_Message_Texts shall b e equal to their resp ective initial c o nditio ns.
12.Y.26 Reliability_Evaluation_Inhibit
This p rop erty, o f typ e B O O LEAN, indicates whether (TRUE) or no t (FALS E) reliab ility- evaluatio n is disab led in the
o b j ect. This p ro p erty is a runtime o verride that allo ws temp orary disab ling o f reliab ility- evaluatio n.
When reliab ility- evaluation is disab led, the Reliab ility p rop erty shall have the value NO _F AULT_D ETECTED unless
O ut_O f_S ervic e is TRUE and an alternate value has b een written to the Reliab ility p ro p erty.
12.Y.27 Audit_Level
This p rop erty, o f typ e B ACnetAuditLevel, sp ecifies the level o f auditing to p erfo rm fo r the sp ecific o b j ec t. If this
p ro p erty has the value D EF AULT, o r if this p ro p erty is no t p resent in the o b j ect, then the audit level value fo r the o b j ect
shall b e taken fro m the Audit_Level p rop erty o f the o b j ect’ s asso ciated Audit Rep o rter o b j ec t.
If this p rop erty is p resent and no t co nfigurab le, the value shall no t b e NO NE.
12.Y.28 Auditable_Operations
This p ro p erty, of typ e B ACnetAuditO p eratio nF lags, sp ecifies the o p eratio ns that the device will rep o rt for this o b j ect.
If p resent and no t c o nfigurab le, the values o f the READ , NO TIFICATIO N, and S UB S C RIPTIO N b its shall b e 0 , and the
If this pro p erty is no t p resent, and the devic e sup p orts auditing, then the Auditab le_Op eratio ns p rop erty o f the o b j ec t’ s
asso ciated Audit Rep o rter o b j ect shall co ntro l the op eratio ns that are auditab le fo r this o b j ect.
12.Y.29 Tags
This p rop erty, of typ e B ACnetARRAY o f B ACnetNameValue, is a co llec tio n o f tags for the o b j ect. S ee Clause Y. 1 . 4
fo r restrictio ns o n the string values used fo r the names o f these tag and fo r a descrip tion of tagging and the mechanism b y
Each entry in the array is a B ACnetNameValue co nstruct whic h co nsists o f the tag name and an o p tional value. If the tag
is defined to b e a " semantic tag" then it has no value, and the " value" field o f the B ACnetNameValue shall b e ab sent.
While so me tags may be known in advanc e when a device is manufactured, it is recommended that imp lementations
co nsider that this kind of info rmatio n might no t be known until a device is dep loyed and to p rovide a means of
12.Y.30 Profile_Location
This p ro p erty, o f typ e Charac terS tring, is the URI o f the lo catio n o f an xdd file (S ee Claus e X. 2 ) c o ntaining the definition
o f the CS ML typ e sp ecified b y the Profile_Name p ro p erty and po ssib le o ther informatio n (S ee Annex X) . The URI is
restricted to using o nly the " http " , " http s" , and " b acnet" URI sc hemes. S ee Clause Q . 8 for the definitio n o f the " b acnet"
URI scheme.
If a Pro file_Lo cation value is no t p rovided fo r a p articular o b j ec t, then the client shall use the Pro file_Lo catio n of the
D evic e o b j ect, if pro vided, to find the definitio n o f the Pro file_Name.
12.Y.31 Profile_Name
This p ro p erty, of typ e CharacterS tring, is the name of an o b j ec t p ro file to which this o b j ect c o nforms. To ensure
uniqueness, a p rofile name shall b egin with a vendo r identifier c o de (see Clause 2 3 ) in base- 1 0 integer format, fo llo wed
b y a dash. All sub sequent characters are administered b y the o rganizatio n registered with that vendor identifier code. The
vendor identifier c ode that prefixes the p ro file name shall indicate the o rganizatio n that p ub lishes and maintains the
p ro file. This vendo r identifier need no t have any relatio nship to the vendo r identifier of the device within which the
o b j ect resides.
A p ro file defines a set o f additio nal p rop erties, b ehavio r, and/o r requirements fo r this o b j ect b eyo nd tho se sp ecified here.
This standard defines o nly the fo rmat o f the names of p rofiles. If the Profile_Lo catio n p ro p erty o f this o b j ect or the
D evic e o b j ect is p resent and no nemp ty, then the value of this p ro p erty shall b e the name o f a CS ML typ e defined in an
[ No te: These p rop erties are added to the Audit Rep o rter and the Audit Lo g o b j ect typ es as o f this addendum. S ee new
Clauses 1 2 . X. and 1 2 . Y. In the Audit Rep o rter ob j ect typ e, these p ro p erties have sp ec ific requirements. In the Audit Lo g
Co de
x
A udit_Level BA CnetA uditLevel O
x
A uditable_Operations BA CnetA uditOperationFlags O
x
This property shall be present only if the device supports audit reporting.
Co de
x
A udit_Priority_Filter BA CnetOptionalPriorityFilter O
x
This property shall be present only if the device supports audit reporting.
[ No te: These p rop erties are added to the Audit Rep o rter and the Audit Lo g o b j ect typ es as o f this addendum. S ee new
Clauses 1 2 . X. and 1 2 . Y. In the Audit Rep o rter ob j ec t typ e, these p ro p erties have sp ec ific requirements. In the Audit Lo g
12.Z.X1 Audit_Level
This p roperty, o f typ e B ACnetAuditLevel, sp ecifies the level o f auditing to p erfo rm fo r the sp ecific o b j ect. If this
p ro p erty has the value D EF AULT, o r if this p ro p erty is no t p resent in the o b j ect, then the audit level value fo r the o b j ect
shall b e taken fro m the Audit_Level p rop erty o f the o b j ect’ s asso c iated Audit Rep o rter o b j ect.
If this p roperty is p resent and no t co nfigurab le, the value shall no t b e NO NE.
12.Z.X2 Auditable_Operations
This p ro p erty, of typ e B ACnetAuditO p eratio nF lags, sp ecifies the o p eratio ns that the device will rep o rt for this o b j ect.
If p resent and no t co nfigurab le, the values o f the READ , NO TIF ICATIO N, and S UB S C RIPTIO N b its shall b e 0 , and the
If this prop erty is no t p resent, and the device sup p orts auditing, then the Auditab le_Op eratio ns p rop erty o f the o b j ect’ s
asso c iated Audit Rep o rter o b j ect shall co ntro l the op eratio ns that are auditab le fo r this o b j ect.
12.Z.X3 Audit_Priority_Filter
This p rop erty, of typ e B ACnetO p tio nalPrio rityF ilter, sp ec ifies the auditab le p rio rities fo r write o p eratio ns on the
co mmandab le pro p erty o f the o b j ec t. B its which are set (1 ) indicate the p rio rities fo r which audit no tific atio ns will be
generated. The b it numb er is one less than the p riority it is asso ciated with (e. g. , b it 7 is asso ciated with p rio rity 8 ) .
If p resent and no t co nfigurab le, this p ro p erty shall have the value NULL.
If this p ro p erty is p resent and has the value NULL o r if the p ro p erty is no t p resent, the o bj ec t shall use the p rio rity filter
setting fro m the Audit_Prio rity_Filter p ro p erty of the ob j ect’ s asso ciated Audit Rep o rter ob j ect.
13.X AuditLogQuery
The AuditLo gQ uery service pro vides efficient access to Audit Lo g reco rds. The servic e allo ws fo r a few co mmo n queries
o n Audit Lo gs.
The service allo ws devic es to find and retrieve audit info rmatio n witho ut reading and pro cessing a co mp lete audit log.
Audit Query By Target - Retrieve the audit reco rds for the sp ecified target devic e, o b j ect, and p rop erty.
Reco rds are returned in reverse sequenc e numb er o rder (newest to o ldest) .
Audit Query By S ource - Retrieve all audited ac tions initiated b y the sp ecified op eratio n so urce. Reco rds are
The structure of the AuditLogQ uery service p rimitive is shown in Tab le 1 3 - X. The termino lo gy and symbo lo gy used in
Argument M M(=)
Audit Lo g M M(=)
Result(+) S S (=)
Audit Lo g M M(=)
No Mo re Items M M(=)
Result(- ) S S (=)
13.X.1.1 Argument
This p arameter shall c o nvey the p arameters fo r the AuditLogQ uery co nfirmed service request.
This p arameter, of typ e B ACnetO b j ectIdentifier, sp ec ifies the Audit Lo g o b j ect to query.
This p arameter, of typ e B ACnetAuditLo gQ ueryParameters, sp ecifies the query p arameters to ap p ly. The typ e of
The 'Target D evic e Identifier', 'Target D evic e Address ', 'T arget O b j ec t Identifier', 'Target Pro p erty Identifier', 'Target
Array Index' identify the device, o b j ect, or p ro p erty fo r which audit reco rds are requested.
When b o th 'Target D evic e Identifier' and 'Target D evic e Address' p arameters are included, a reco rd is a matc h if it
The 'Target Priority' p arameter is used to restrict reco rds to o nly tho se fo r the sp ecified p rio rity. Audit reco rds witho ut a
The 'O p eratio ns' p arameter determines the o p eratio n typ es fo r which entries are requested. If no t p resent, all o p eration
The 'Re sult Filter' p arameter indicates whether audit reco rds fo r suc cessful and/o r failed ac tio ns will b e inc luded in the
resp o nse.
Table 13-X3 . S truc ture o f 'Audit Q uery B y S o urc e' Q uery Parameters
The 'S o urce D evice Identifier' and 'S o urc e O b j ec t Identifier' identify the o p eration so urce fo r which audit reco rds are
requested.
When b o th the 'S o urce D evic e Identifier' and 'S o urce D evice Address' p arameters are inc luded, a reco rd is a match if it
The 'O p eratio ns' p arameter determines the o p eratio n typ es fo r which entries are requested. If no t p resent, all o p eration
The 'Re sult F ilter' p arameter indicates whether audit reco rds fo r suc cessful and/o r failed ac tio ns will b e inc luded in the
resp o nse.
This o p tio nal p arameter, o f typ e Unsigned6 4 , identifies, b y sequenc e numb er, where in the lo g to start the query. O nly
tho se reco rds which match the query p arameters and whic h have a sequence numb er less than the value of this p arameter
are to b e returned. If this p arameter is no t p resent, the query will start with the latest rec o rd in the log.
13.X.1.2 Result(+)
The 'Result(+) ' p arameter shall indicate that the servic e request succeeded. A succ essful result includes the fo llo wing
p arameters.
13.X.1.2.2 Records
This p arameter, of typ e list o f B ACnetAuditLo gReco rdResult, co ntains the returned reco rds. Each entry is of the fo rm:
mo re rec o rds (TRUE) , o r no t (F ALS E) . When F ALS E, there may, o r may no t, b e mo re items in the lo g which matc h the
query.
13.X.1.3 Result(-)
The 'Re sult(- ) ' p arameter shall indic ate that the service request failed. The reaso n fo r failure is sp ecified by the 'Erro r
The 'Erro r Class ' and 'Erro r Co de' to b e returned fo r sp ecific situatio ns are as fo llo ws:
exist.
The device is no t co nfigured to p erfo rm S ERVICE S O PTIO NAL_F UNCTIO NALITY_NO T_S UPPO RTED
audit lo gging.
No te that there shall b e no validatio n o f ob j ect/p ro p erty sp ec ificatio n filter p arameters. F o r examp le, 'Target Array Index'
shall no t be validated to ensure it is co nsistent with the 'Target O b j ect Identifier' and 'Target Pro p erty Identifier'. The
resp o nding device shall j ust perfo rm the c omp ariso n b etween the audit lo g reco rds and the filter p arameters as described
b elo w.
D evic es that sup p o rt execution o f this service are required to sup p ort all query typ es.
Reco rds are returned latest first. The respo nding devic e shall return up to 'Requested Co unt' rec o rds. If the resp o nding
device reaches the end o f the b uffer and all reco rds whic h match the query are returned, then the 'No Mo re Items'
If there are no reco rds in the Audit Lo g that match the query criteria, then a Result(+) shall b e returned with no reco rds
This query is used to get a his to ry o f audit rec o rds fo r ob j ects in a sp ecific device. It selec ts the mo st recent rec o rds with
a sequenc e numb er less then 'S tart At S equenc e Numb er', and have 'Target D evice', 'Target O b j ect', 'Target Pro p erty', and
'Prio rity' fields which match the 'Target D evice Identifier' o r 'Target D evice Address', 'T arget O b j ect Identifier', 'Target
Pro p erty Identifier', 'Target Array Index', and 'Target Prio rity' query p arameters.
S o me o f the query filter p arameters ('Target O b j ec t Identifier', 'Target Pro p erty Identifier', 'Target Array Index', 'Target
Prio rity') are op tio nal. When one o f these p arameters is no t pro vided, all values of the co rresp o nding field in the audit log
This query is used to get a histo ry o f audit reco rds of ac tio ns initiated b y a sp ec ific o p eratio n so urc e. It selec ts the mo st
recent records with a sequence numb er less then 'S tart At S equenc e Numb er', and have 'S o urce D evice', and 'S o urce
O b j ec t' fields whic h matc h the 'S o urce D evice Identifier' and 'S o urc e O b j ect Identifier' query p arameters.
The 'S o urce O b j ect Identifier' and 'O p eratio ns' query filter p arameter is op tio nal. When o ne of these p arameters is not
p ro vided, all values of the co rresp o nding field in the audit log reco rd will b e c o nsidered a match.
13.Y ConfirmedAuditNotification
The Co nfirmedAuditNo tificatio n servic e is used b y an o p eratio n so urce, o p eration target, o r audit forwarder to p rovide
The structure of the Co nfirmedAuditNo tific atio n service p rimitive is sho wn in Tab le 1 3 - Y1 . The termino logy and
Argument M M(=)
No tificatio ns M M(=)
Result(+) S S (=)
Result(- ) S S (=)
13.Y.1.1 Argument
This p arameter shall co nvey the p arameters fo r the Co nfirmedAuditNo tificatio n confirmed service request.
13.Y.1.1.1 Notifications
This p arameter sp ecifies o ne or mo re audit no tificatio ns o f typ e B ACnetAuditNo tificatio n. For the co ntent o f audit
13.Y.1.2 Result(+)
The 'Result(+) ' p arameter shall indicate that the service request succeeded.
13.Y.1.3 Result(-)
The 'Re sult(- ) ' p arameter shall indicate that the service request failed. The reaso n fo r failure is sp ecified by the 'Erro r
The 'Erro r Class ' and 'Erro r Co de' to b e returned fo r sp ecific situatio ns are as fo llo ws:
lo gger.
Lo g ob j ec t.
13.Z UnconfirmedAuditNotification
The Unco nfirmedAuditNo tificatio n service is used b y an o peratio n so urce, o p eration target, o r audit fo rwarder to pro vide
Argument M M(=)
No tificatio ns M M(=)
13.Z.1.1 Argument
This p arameter shall c o nvey the p arameters fo r the Unco nfirmedAuditNo tificatio n co nfirmed service request.
13.Z.1.1.1 Notifications
This p arameter sp ecifies o ne or mo re audit no tificatio ns o f typ e B ACnetAuditNo tificatio n. For the co ntent o f audit
Lo g ob j ec t.
[ Insert into pro ductio n BACnetPropertyIdentifier Clause 21 in , p reserving the alp hab etical and numerical o rder]
...
audit-source-reporter (497) ,
audit-level (498) ,
audit-notification-recipient (499) ,
audit-priority-filter (500) ,
auditable-operations (501 ) ,
delete-on-forward (502) ,
maximum-send-delay (503) ,
monitored-objects (504) ,
send-now (505) ,
...
...
-- audit-source-reporter (497) ,
-- audit-level (498) ,
-- audit-notification-recipient (499) ,
-- audit-priority-filter (500) ,
-- auditable-operations (501 ) ,
-- delete-on-forward (502) ,
-- maximum-send-delay (503) ,
-- monitored-objects (504) ,
-- send-now (505) ,
...
...
issue-confirmed-notifications (51 ) ,
...
-- in version 1 revision 20
...
[Insert into production BACnetObjectType Clause 21 in , p reserving the alphab etic al and numerical o rder]
audit-log (61 ) ,
audit-reporter (62) ,
...
audit-log (61 ) ,
audit-reporter (62) ,
BACnetServicesSupported : : = B IT S TRING {
...
-- confirmed-audit-notification (44) ,
...
...
-- audit-log-query (45) ,
...
-- unconfirmed-audit-notification (46) ,
...
unc o nfirmed- co v-no tificatio n-multip le (4 3 ) (43) , - - Alarm and Event S ervice
[ Insert new pro ductio ns into Clause 21 , sectio n 'B ase Typ es ', p reserving the alp hab etical o rder]
BACnetAcknowledgeAlarmInfo : : = S EQ UENCE {
BACnetAuditLevel : : = ENUMERATED {
no ne (0 ) ,
audit- all (1 ) ,
audit- co nfig (2 ) ,
default (3 ) ,
...
-- Enumerated values 0-1 2 7 are reserved for definition by AS HRAE. Enumerated values 1 2 8 -2 5 5 may be used
BACnetAuditOperation : : = ENUMERATED {
read (0 ) ,
write (1 ) ,
create (2 ) ,
delete (3 ) ,
life- safety (4 ) ,
devic e- reset (8 ) ,
devic e- b ackup (9 ) ,
devic e- resto re (1 0 ) ,
no tificatio n (1 2 ) ,
auditing- failure (1 3 ) ,
general (1 5 ) ,
...
-- Enumerated values 0-3 1 are reserved for definition by AS HRAE. Enumerated values 3 2-6 3 may be used
BACnetAuditOperationFlags : : = B IT S TRING {
read (0 ) ,
write (1 ) ,
create (2 ) ,
delete (3 ) ,
life- safety (4 ) ,
device- reset (8 ) ,
device- b ac kup (9 ) ,
device- resto re (1 0 ) ,
no tificatio n (1 2 ) ,
auditing- failure (1 3 ) ,
general (1 5 ) ,
...
-- B its 0-3 1 are reserved for definition by AS HRAE. B its 3 2 -63 may be used by others subj ect to
-- the procedures and constraints described in Clause 2 3 for B ACnetAuditOperation enumeration values.
BACnetLifeSafetyOperationInfo : : = S EQ UENCE {
BACnetPriorityFilter : : = B IT S TRING {
automatic-life-safety (1 ),
priority-3 (2),
priority-4 (3 ),
critical-equipment-controls (4),
minimum-on-off (5 ),
priority-7 (6),
manual-operator (7 ),
priority-9 (8 ),
priority-1 0 (9 ),
priority-1 1 (1 0),
priority-1 2 (1 1 ),
priority-1 3 (1 2 ),
priority-1 4 (1 3 ),
priority-1 5 (1 4),
priority-1 6 (1 5 )
BACnetObjectSelector : : = CHOICE {
none NULL,
BACnetOptionalPriorityFilter : : = CHOICE {
default NULL,
filter B ACnetPriorityFilter
BACnetAuditNotification : : = S EQ UENCE {
BACnetAuditLogRecord : : = S EQ UENCE {
BACnetAuditLogRecordResult : : = S EQ UENCE {
b y- target [ 0 ] S EQ UENCE {
},
b y- so urc e [ 1 ] S EQ UENCE {
BACnetSuccessFilter : : = ENUMERATED {
all (0 ) ,
failures- o nly (2 )
...
confirmed-audit-notification (32) ,
...
...
audit-log-query (33) ,
...
...
...
...
...
...
...
...
unconfirmed-audit-notification (1 2)
...
unco nfirmed- co v-no tificatio n-multip le [ 1 1 ] Unco nfirmedCO VNo tific atio nMultip le- RequestRequest,
[ Insert new pro ductio n into Clause 21 , at end o f sectio n 'Co nfirmed Alarm and Event S ervic es']
ConfirmedAuditNotification-Request : : = S EQ UENCE {
[ Insert new pro ductio ns into Clause 21 , at end o f sectio n 'Co nfirmed O b j ec t Acc ess S ervices']
AuditLogQuery-Request : : = S EQ UENCE {
AuditLogQuery-ACK : : = S E Q UENCE {
[ Insert new pro ductio n into Clause 21 , at end o f sectio n 'Unco nfirmed Alarm and Event S ervices']
UnconfirmedAuditNotification-Request : : = S EQ UENCE {
...
...
...
...
audit-log-query [3 3] Error,
...
Unsigned64 ::= Unsigned (0. . 1 8 4467 4407 3 7095 5 1 61 5 ) -- 0 . . 'the 64th power of two '-1
merging into its Audit Lo gs and forwards no tifications to p arent audit loggers.
Co nfirmedAuditNo tificatio n x x
AuditLo gQ uery x
The audit logger receives audit event no tificatio ns and p lac es them into lo c al Audit Lo g obj ects.
The audit logger p erforms all functio ns of an audit lo gger as desc rib ed in Clause 1 9 . Y.
D evices claiming co nformance to this B IB B are intero p erable with devices claiming c o nformanc e to AR- R- B .
generates audit no tificatio ns fo r lo c al ob j ects, and, if it p erfo rms actio ns, it is an o p eratio n so urce which generates
audit no tific atio ns fo r its ac tio ns. S ee Clause 1 9 . Y fo r mo re info rmation o n audit logging.
1
Co nfirmedAuditNo tificatio n x
1
Unco nfirmedAuditNo tification x
1
At least o ne o f these shall b e sup p o rted.
A devic e claiming this B IB B sup p o rts modific atio n o f its audit repo rting co nfiguration. S p ecifically, the fo llo wing
Audit_Level
o b j ec ts, and, if it p erforms actio ns, it is an op eratio n so urce which generates audit no tificatio ns fo r its actio ns. S ee
1
Co nfirmedAuditNo tificatio n x
1
Unco nfirmedAuditNo tification x
1
At least o ne o f these shall b e sup p o rted.
Co nfirmedAuditNo tificatio n x x
1
AuditLo gQ uery x
1
ReadRange x
1
At least o ne o f these shall b e sup p o rted.
O CD - A, and AR- V- A. The A device shall b e c ap ab le o f using ReadPro p erty to retrieve and WritePro p erty to mo dify
any auditing related prop erties. D evice A may use alternate services where sup p o rt fo r executio n o f the alternate
service is sup p o rted by D evic e B. D evic e A shall be c apab le o f creating/deleting Audit Rep o rter and Audit Lo g
AuditLo gQ uery x
CreateO b j ect x
D eleteO b j ect x
ReadPro p erty x
WritePro p erty x
Audit_Level
The A device is ab le to use ReadPro p erty to retrieve and p resent all standard p ro p erties o f the Audit Rep orter and
The A devic e is ab le to use WritePro p erty to mo dify any standard p rop erty of the Audit Rep o rter and Audit Lo g
o b j ect typ es where the pro p erty is no t required to be read- o nly, or to which access is o therwise restric ted by the
[ Adds audit rep o rting requirements to all advanced wo rkstatio n device pro files]
[ No te that there are o ther addenda to 1 3 5 - 2 0 1 6 which define new advanced wo rkstatio n device p ro files. S imilar additions
A udit Reporting
Audit rep o rting should no t b e sup p ressib le b y disab ling co mmunicatio n via the D eviceCommunic atio nCo ntro l service.
Clarify that audit no tificatio ns fo r changes in respo nse to B ACnet service requests are sent even if initiatio n has b een
D ep recate the D IS AB LE o p tio n o f the D evic eCo mmunicatio nCo ntro l service. Having long b een no ted as no t very useful,
this o p tio n o f the servic e is b eing deprec ated at this time due to the co mp licatio ns added when co mb ined with audit
no tificatio ns.
BA Cnet services and o p tio nally sto p respo nding to all APD Us (excep t D eviceCo mmunicatio nCo ntro l or, if sup po rted,
ReinitializeD evic e) on the communicatio n netwo rk or internetwo rk fo r a sp ecified duratio n o f time. This service is
p rimarily used b y a human op erato r fo r diagno stic purp o ses. A p asswo rd may b e required from the client B ACnet- user
p rio r to exec uting the service. The time duration can b e set to " indefinite, " meaning co mmunicatio n must b e re- enab led
b y a D eviceCo mmunicatio nCo ntro l or, if supp o rted, ReinitializeD evic e service, no t by time.
BA Cnet services igno re all APD Us excep t D evic eCo mmunicatio nCo ntro l and, if sup p orted, ReinitializeD evice APD Us.
If the 'Time D uratio n' p arameter is no t p resent, then the time duratio n shall b e considered indefinite, meaning that o nly an
exp licit D eviceCo mmunicationCo ntrol o r ReinitializeD evice APD U shall enab le co mmunic atio ns. The 'Time D uratio n'
p arameter shall b e igno red and the time p erio d considered to be being indefinite if the 'Enab le/D isab le' p arameter has a
If the resp onding B ACnet- user do es no t have a clo ck and the time duratio n is no t indefinite, then the request shall be
c o nsidered invalid and the resp o nding B ACnet- user shall iss ue a Result(- ) resp o nse.
Clause 1 8 . The 'Erro r Class' and 'Erro r Co de' to b e returned fo r sp ecific situatio ns are as follo ws:
required.
The device do es no t have a clo ck and the S ERVICES O PTIO NAL_F UNCTIO NALI TY_NO T_S UPPO RTED
" indefinite" .
B ACnet- user shall resp o nd with a 'Result(+) ' service p rimitive. If the request is valid and the 'Enab le/D isab le ' p arameter
is D IS AB LE, the resp o nding B ACnet- user shall disc o ntinue resp onding to any sub sequent messages exce p t
D eviceCo mmunicatio nCo ntrol and, if sup po rted, ReinitializeD evice messages, and shall disc o ntinue initiating messages.
If the request is valid and the 'Enab le/D isab le ' p arameter is D IS AB LE_INITIATIO N, the resp o nding B ACnet- user shall
disco ntinue the initiatio n of BA Cnet messages excep t fo r I- Am requests issued in acc o rdance with the Who - Is servic e
p ro c edure and ConfirmedA uditNotification and UnconfirmedA uditNotification requests . Co mmunicatio n shall be
disab led in this manner until either the 'Time D uratio n' has exp ired or a valid D eviceCo mmunicatio nCo ntro l (with
'Enab le/D isab le ' = ENAB LE ) o r, if sup p orted, a valid ReinitializeD evice (with 'Reinitialized S tate of D evice' =
If the resp o nding B ACnet- us er do es no t have a c lo ck and the 'Time D uratio n' p arameter is no t set to " indefinite, " the
APD U shall b e ignored and a ' Result(- ) ' servic e p rimitive shall b e issued. If the 'Passwo rd' p arameter is invalid o r ab sent
when a p asswo rd is required, the APD U shall be igno red and an Erro r- PD U with 'erro r class ' = S ECURITY and 'erro r
If the request is valid and the 'Enable/Disable' parameter is the deprecated value DISA BLE, the request shall be ignored
and an Error-PDU with 'error class' = SERVICES and 'error code' = SERVICE_REQUEST_DENIED shall be issued.
D eviceCo mmunicatio nCo ntrol request. This error is not expected in response to service requests but rather is
expected to be used internally when actions that would normally result in initiation of a BA Cnet service fail due
to communications being disabled. A s such, this error code would be seen in objects that record the result of
[ Change Clause 21 ]
DeviceCommunicationControl-Request : : = S EQ UENCE {
enab le (0 ) ,
},
[ Change Clause E. 4 . 1 ]
p articular device fo r a p eriod o f five minutes. This is ac co mp lished by means o f the D eviceCo mmunicatio nCo ntro l
[ Change Clause F . 4 . 1 ]
X'0 5 ' 5
135-2016 bi-3. Modify Logging Objects to Allow for Extremely Large Logs.
Ratio nale
32
Allo w fo r lo gging o b j ects to sto re mo re than 2 -1 entries and to remo ve the need to re- alloc ate lo g b uffer entries fo r
This change reco gnizes the inab ility o f many imp lementatio ns to p re-determine the size required fo r reco rds and thus the
[ Change Enable p ro p erty descrip tio ns in lo gging o b j ects, Clauses 12.25.5, 12.27.8, 12.30.8 ]
This p ro p erty, of typ e B O O LEAN, indic ates and co ntro ls whether (TRUE) or no t (F ALS E) lo gging of events and
c o llected data is enab led. Logging o ccurs if and o nly if Enab le is TRUE, Lo cal_Time is on or after S tart_Time, and
Lo c al_Time is b efo re S to p_Time. If S tart_Time c o ntains an unsp ecified datetime, then it shall b e c onsidered equal to 'the
start o f time'. If S to p _Time co ntains an unsp ecified datetime, then it shall b e c o nsidered equal to 'the end of time'. Log
reco rds o f typ e log- status are rec o rded witho ut regard to the value o f the Enab le p rop erty.
Attemp ts to write the value TRUE to the Enab le p ro p erty while S to p _When_F ull is TRUE and either Reco rd_Co unt is
32
equal to B uffer_S ize , or Buffer_Size is 2 -1 and there is no space for another record, shall cause a Result(- ) resp o nse to
b e issued, sp ec ifying an 'Erro r Class ' o f O B JECT and an 'Erro r Co de' o f LO G_B UFF ER_F ULL.
[ Change Stop_When_Full p ro p erty descrip tio ns in logging o b j ects, Clauses 12.25.12, 12.27.11, 12.30.17 ]
This p ro p erty, o f typ e B O O LEAN, sp ecifies whether (TRUE) o r no t (F ALS E) lo gging sho uld cease when the lo g b uffer
is full. When lo gging ceases b ecause the additio n of o ne mo re lo g reco rd would cause the lo g b uffer to b e full, Enab le
If S to p_When_F ull is writab le, attemp ts to write the value TRUE to the S to p _When_F ull p rop erty while Reco rd_Co unt
is equal to B uffer_S ize shall result in the o ldest Lo g_B uffer rec o rd b eing discarded, and shall cause the Enab le p rop erty
32
If Stop_When_Full is TRUE and Buffer_Size is 2 -1 and the addition of a new record fails due to a lack of space, then
the oldest Log_Buffer record shall be discarded, the Enable property shall be set to FA LSE and the event is recorded.
[ Change Buffer_Size p rop erty descrip tio ns in lo gging o b j ects, Clauses 12.25.13, 12.27.12, 12.30.18 ]
This p ro p erty, o f typ e Unsigned3 2 , shall sp ecify the maximum numb er of lo g rec o rds the lo g buffer may ho ld. If
writab le, it may no t b e written when Enab le is TRUE. The disp o sitio n o f existing lo g rec o rds when B uffer_S ize is written
is a lo c al matter. If all reco rds are deleted when the B uffer_S ize is written then the o b j ec t shall ac t as if the Reco rd_Co unt
32
For products that support very large log objects, the value 2 -1 is reserved to indicate that the buffer size is unknown
to b e read. If the item with the index sp ec ified in this p arameter do es no t exist, then no items match the criteria fo r b eing
read and returned, regardless o f the value o f the 'Co unt' p arameter.
Devices that execute ReadRange shall support Unsigned32 values for reference indexes unless the device contains object
types which have Total_Record_Count properties of type Unsigned64, or which are capable of containing list properties
32
with more than 2 -1 entries, in which case the device shall support Unsigned64 reference indexes.
Devices which initiate the By Position form of ReadRange with arbitrary reference indexes shall support Unsigned32
values for reference indexes unless the device interacts with object types which have Total_Record_Count properties of
type Unsigned64, in which case the device shall support Unsigned64 reference indexes.
' Co unt' is negative) item to b e read. If the item with the sequence numb er sp ecified in this p arameter do es no t exist, then
no items match the criteria fo r b eing read and returned, regardless o f the value o f the 'Co unt' p arameter.
Devices that execute ReadRange shall support Unsigned32 values for sequence numbers, unless the device contains
object types which have Total_Record_Count properties of type Unsigned64 in which case the device shall support
Devices which initiate ReadRange shall support Unsigned32 values for sequence numbers, unless the device interacts
with object types which have Total_Record_Count properties of type Unsigned64 in which case the device shall support
included if the 'Range' p arameter o f the request was o f the typ e 'B y S equenc e Numb er' or 'B y Time' and 'Item Co unt' is
greater than 0 .
Devices that execute ReadRange shall support Unsigned32 values for sequence numbers, unless the device contains
object types which have Total_Record_Count properties of type Unsigned64 in which case the device shall support
Devices which initiate ReadRange shall support Unsigned32 values for sequence numbers, unless the device is intended
to interact with object types which have Total_Record_Count properties of type Unsign ed64 in which case the device
The B ACnetPro p ertyIdentifier enumeration will so o n o verflo w the p ortio n of the range reserved fo r definitio n by
...
-- The special property identifiers all, optional, and required are reserved for use in the
--
-- Enumerated values 0-5 1 1 and enumerated values 41 94304 and up are reserved for definition by AS HRAE.
-- Enumerated values 5 1 2 -41 943 03 may be used by others subj ect to the procedures and constraints described
-- in Clause 2 3 .
B ACnetPro p ertyIdentifier 0. .. 5 1 1 , 4 1 9 43 0 3
32 32
41 94304. . . (2 - 1) (2 - 1)
The standard do es no t state what a B ACnet device sho uld do in execution o f the WritePro p ertyMultip le servic e when it
canno t deco de an ob j ect identifier, pro p erty identifier, o r array index after it has already suc cessfully written o ne o r more
p ro p erties.
The c hange clarifies what the 'F irst F ailed Write Attemp t' p arameter shall co ntain when o ne or mo re p rop erties have
F o r the case when the ob j ect identifier, p ro p erty identifier, or array index canno t be dec o ded, the resp ec tive values to
return in the 'First F ailed Write Attemp t' p arameter are sp ec ified.
If, in the p ro c ess o f c arrying out the modificatio n of the indicated p rop erties in the o rder sp ec ified in the 'List o f
Write Acc es s S p ecificatio ns ', a p ro p erty is encountered that canno t b e mo dified, the resp o nding B ACnet- user
shall issue a 'Re sult(- ) ' resp o nse p rimitive indicating the reaso n fo r the failure. The result o f this service shall b e
either that all o f the sp ec ified p ro p erties o r only the p ro p erties up to , b ut no t including, the p ro p erty sp ec ified in
the 'F irs t Failed Write Attemp t' p arameter were suc cessfully mo dified.
A B ACnet- Rej ec t- PD U shall b e issued o nly if no write o p eratio ns have b een suc cessfully executed, indicating
that the service request was rej ec ted in its entirety. If any o f the write o p eratio ns co ntained in the 'List o f Write
Acc ess S p ec ificatio ns ' have b een successfully exec uted, a Result(- ) resp o nse indicating the reaso n fo r the failure
In the case that the 'Object Identifier', the 'Property Identifier', or the 'Property A rray Index' cannot be
successfully decoded after at least one write operation has completed successfully, the object instance portion of
the 'Object Identifier' specified in the 'First Failed Write A ttempt' shall contain the instance value 41 94303. In
this case, the value of the 'Property Identifier' parameter and the 'Property A rray Index' parameter is a local
matter.
Clarific atio n is needed regarding the enco ding of the ReadPro p ertyMultip le- ACK and its co nstituents fo r the pro p erty
O PTIO NAL, when there are no o p tio nal p rop erties, so the list is emp ty.
No te that so me language is added to Clause 1 5 . 7 . 3 . 1 . 2 'List o f Prop erty References' as an erratum fix, fo r c larificatio n of
'List o f Read Access S p ecific atio ns' = ((Analo g Input, Instance 1 9 ) , (O PTIO NAL) )
Assuming that (Analo g Input, 1 9 ) exists and co ntains no o p tio nal p ro p erties, the result would b e:
F.3.X Encoding for Example E.3.X - ReadPropertyMultiple OPTIONAL response if there are no optional
properties
X'0 0 ' PD U Typ e=0 (B ACnet- Co nfirmed- Request- PD U, S EG=0 , MO R=0 , S A=0 )
X'1 F ' PD Clo sing Tag 1 (List O f Prop erty Referenc es)
Assuming that (Analo g Input, 1 9 ) exists and co ntains no o p tio nal p ro p erties, the result would b e:
X'0 E' S ervice ACK Cho ic e=1 4 (ReadPro p ertyMultip le- ACK)
The O ut_O f_S ervice functionality is inc o nsistent acro ss o b j ects and is unclear with resp ec t the changeab ility o f the
The O ut_O f_S ervice p rop erty fo r all o b j ects is mo dified to be c o nsistent in requirements and p resentatio n.
[Replace Out_Of_S ervice property language with the following language in:
12.X.Y Out_Of_Service
The O ut_O f_S ervice p ro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (F ALS E) the Present_Value
- the Present_Value of the o b j ect is p revented fro m b eing changed by so ftware lo c al to the B ACnet device in
- the Present_Value p rop erty and the Reliab ility p rop erty, if p resent and cap ab le o f taking o n values o ther than
NO _F AULT_D ETECTED , shall b e writab le to allo w simulating sp ec ific co nditions o r fo r testing p urp o ses;
- o ther functions that dep end on the state o f the Present_Value, or Reliab ility p ro p erties shall resp o nd to changes
made to these p ro p erties, as if tho se c hanges had o c curred while the o b j ect was in servic e;
- if the Prio rity_Array and Relinquish_D efault p ro p erties are p resent, the Present_Value p ro p erty shall still be
co ntro lled b y the B ACnet c o mmand prio ritizatio n mec hanism (see Clause 1 9 ) .
Restrictions on changing the Present_Value property by software local to the B ACnet device do not apply to local human-
machine interfaces.
[Change
[Note that the current language in 1 2. 1 8 . 1 0 is slightly different to that in 1 2. 2. 1 0 and 1 2 . 6. 1 0 using “input” instead of
“physical input” so that change is to be made as well but does not show in the belo w change marking]
12.X.10 Out_Of_Service
The O ut_O f_S ervice p rop erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the physical input
- This means that the Present_Value p ro p erty is deco up led fro m the physical inp ut and will no t trac k changes to
the p hysical input; when the value o f O ut_O f_S ervice is TRUE.
- In additio n, the Reliab ility p rop erty and the co rresp onding state o f the F AULT flag o f the S tatus_Flags p ro p erty
shall b e deco up led fro m the physical inp ut when O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervic e p ro p erty is TRUE, the Present_Value property and the Reliab ility property, if
present and capable of taking on values other than NO_FAULT_DETECTED, p ro p erties may b e changed to any
value as a means o f shall be writable to allow simulating sp ecific fixed conditio ns o r fo r testing p urpo ses.
- O ther other functions that dep end on the state o f the Present_Value or Reliab ility pro perties shall resp o nd to
changes made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o cc urred in the
[Change
[Note that in the first sentence of 1 2 . 1 9. 1 0 “output or process” is changed to “physical p oint” to match the other outp ut
obj ect types and in the remainder of 1 2 . 1 9 . 1 0, “output” is changed to “physical output” to match other output obj ect types.
[Note that in Clause 1 2 . 5 5 . 8 , “lighting output” is changed to “physical output” to match other output obj ect types and o ther
minor editorial changes are made to make the clause match. These changes are not shown in change marking. ]
The O ut_O f_S ervice p rop erty, o f typ e B O O LEAN, is an indic atio n whether (TRUE) o r no t (F ALS E) the physical p o int
- This means that changes to the Present_Value p ro p erty are deco up led fro m the p hysical o utp ut; when the value
- In additio n, the Reliab ility p ro p erty , if present, and the co rresp o nding state of the F AULT flag of the
S tatus_F lags p ro p erty shall b e dec o up led fro m the p hysical o utp ut; when O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Present_Value property and the Reliab ility property, if
present and capable of taking on values other than NO_FAULT_DETECTED, p ro p erties may still b e changed to
any value as a means o f shall be writable to allow simulating sp ec ific fixed co nditions o r fo r testing p urp o ses ; .
- O ther other functions that dep end on the state o f the Present_Value or Reliab ility pro perties shall resp o nd to
changes made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o c curred to the
p hysic al o utput; .
- The the Present_Value p rop erty shall still be co ntro lled by the B ACnet co mmand p rioritizatio n mechanism if
[ Change
The O ut_O f_S ervic e p rop erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (FALS E) the inp ut(s) or
- This means that c hanges to the Tracking_Value p ro p erty are decoup led fro m the inp ut(s) o r p ro cess ; when the
- In additio n, the Reliab ility p rop erty and the co rresp onding state o f the F AULT flag o f the S tatus_F lags p ro p erty
shall b e dec o up led from the input or process; when O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Tracking_Value property and the Reliab ility property, if
capable of taking on values other than NO_FA ULT_DETECTED, p ro p erties may b e changed to any value as a
means o f shall be writable to allow simulating sp ec ific fixed c o nditions o r fo r testing purp o ses ; .
- O ther other func tions that dep end on the state o f the Tracking_Value o r Reliab ility p rop erties shall resp o nd to
changes made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o ccurred to the
The O ut_O f_S ervice p ro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the algo rithm this
- The the Present_Value p rop erty shall be dec o up led fro m the algo rithm ; when the value o f O ut_O f_S ervic e is
TRUE.
- In additio n, the Reliab ility p ro p erty , if present, and the co rresp o nding state of the F AULT flag of the
S tatus_F lags p ro p erty shall b e dec o up led fro m the algo rithm; when O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Present_Value property and the Reliab ility property, if
present and capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to allow
p ro p erties may be c hanged to any value as a means of simulating sp ecific fixed co nditio ns or fo r testing
p urpo ses ; .
- The the p ro p erty referenced by Manip ulated_Variab le_Reference and o ther func tions that dep end on the state o f
the Present_Value or Reliab ility p ro p erties shall resp o nd to changes made to these p ro p erties while
O ut_O f_S ervice is TRUE, as if tho se changes had b een made b y the algo rithm.
The O ut_O f_S ervice p rop erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the p ro cess this
o b j ect represents is no t in service. In this case, " in service" means that the app licatio n p ro gram is pro p erly lo aded and
initialized, altho ugh the p ro cess may o r may no t b e actually executing. If the Program_S tate p ro p erty has the value ID LE,
- the Reliability property, if present, and the corresponding state of the FA ULT flag of the Status_Flags property
- the Reliab ility property, if present and capable of taking on values other than NO_FA ULT_DETECTED, shall
- other functions that depend on the state of the Reliability property shall respond to changes made to this
The O ut_O f_S ervice p rop erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the input that the
o b j ect directly represents, if any, is no t in servic e. (" D irec tly rep resents" means that the Inp ut_Referenc e p rop erty is no t
p resent in this o b j ec t. )
- The the Present_Value p ro p erty is deco up led fro m the Co unt p ro p erty and will no t track changes to the inp ut;
- In additio n, the Reliab ility p rop erty and the co rresp onding state o f the F AULT flag o f the S tatus_F lags p ro p erty
shall b e deco up led fro m the inp ut; when O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Present_Value property and the Reliab ility property, if
present and capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to allow
p ro p erties may be changed to any value as a means of simulating sp ecific fixed co nditio ns or fo r testing
p urpo ses ; .
- O ther other functions that dep end on the state o f the Present_Value or Reliab ility pro perties shall resp o nd to
c hanges made to these p ro p erties while O ut_O f_S ervic e is TRUE as if tho se changes had oc curred in the input.
If the Inp ut_Referenc e p roperty is p resent, the state of the O ut_O f_S ervic e pro p erty of the o b j ec t referenced by
Inp ut_Reference shall no t b e indicated b y the O ut_O f_S ervice p ro p erty of the Pulse Co nverter o b j ec t.
The O ut_O f_S ervic e pro p erty, of typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (F ALS E) the internal
calc ulatio ns o f the sc hedule ob j ect are used to determine the value o f the Present_Value pro p erty.
- This means that the Present_Value p rop erty is deco up led fro m the internal c alculatio ns and will no t track
- O ther other functio ns that dep end on the state o f the Pres ent_Value, such as writing to the memb ers o f the
List_O f_O b j ect_Pro p erty_References, shall resp o nd to changes made to that pro p erty while O ut_O f_S ervic e is
The O ut_O f_S ervic e p ro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (F ALS E) the lo gical do or
- This means that the Present_Value p ro p erty is deco up led fro m the physic al do o r and will no t track changes to
the p hysical doo r; when the value o f O ut_O f_S ervice is TRUE.
- In additio n, the Reliab ility p rop erty and the co rresp onding state o f the FAULT flag o f the S tatus_F lags p ro p erty
shall b e deco up led fro m the physical do o r; when Out_O f_S ervice is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Present_Value property and the Reliab ility property, if
capable of taking on values other than NO_FA ULT_DETECTED, p ro p erties, and if p resent, the Do o r_S tatus,
Lo ck_S tatus and D oo r_Alarm_S tate p rop erties shall be writable to allow may be changed to any value as a
- O ther other func tio ns that dep end o n the state o f the Present_Value o r Reliab ility p ro p erties, and if present the
D o o r_S tatus, Lo ck_S tatus and D o o r_Alarm_S tate p ro p erties, shall resp o nd to changes made to these p rop erties
while O ut_O f_S ervice is TRUE, as if tho se changes had o c curred to the physical do or.
The O ut_O f_S ervice pro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the authentication
- If o ut of servic e, then the p ro cess that this o b j ect rep resents shall no t p erform any authenticatio n or
autho rizatio n.
- the Reliability property and the corresponding state of the FA ULT flag of the Status_Flags property shall be
- the Reliability property, if capable of taking on values other than NO_FA ULT_DETECTED shall be writable to
- other functions that depend on the state of the Reliability property shall respond to changes made to this
property, as if those changes had occurred to the associated process this object represents.
When this p ro p erty changes fro m F ALS E to TRUE, then the Access_Event p ro p erty shall b e set to O UT_O F_S ERVICE .
When this p ro p erty changes fro m TRUE to F ALS E, then the Access_Event p ro p erty shall be set to
The O ut_O f_S ervice p rop erty, o f type B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the ob j ect is out of
service.
- the Reliab ility p ro p erty and the co rrespo nding state o f the F AULT flag o f the S tatus_F lags p ro p erty shall be
- and the Reliab ility p ro p erty , if capable of taking on values other than NO_FA ULT_DETECTED, shall be
writable to allow may b e changed to any value as a means o f simulating sp ec ific fixed co nditio ns o r fo r testing
p urpo ses ; . O ther func tio ns that dep end on the state o f the Reliab ility p ro p erty shall resp ond to changes made to
- If if o ccup ancy co unting is sup p orted and the o b j ect is o ut o f servic e, then the O c cup ancy_Co unt pro p erty is
- In addition, writing to the Adj ust_Value p ro p erty shall no t mo dify the O cc up ancy_Co unt; .
- The the O ccup ancy_Co unt p ro p erty , if present, shall be writable to allow may be changed to any value as a
- O ther other func tions that dep end o n the state o f the O ccup ancy_S tate or Reliability properties p ro p erty shall
resp o nd to c hanges made to this p ro p erty while Out_O f_S ervic e is TRUE thes e properties, as if those changes
The O ut_O f_S ervic e pro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (F ALS E) the Present_Value
o f the Credential D ata Input o b j ec t is p revented fro m b eing mo dified by so me p ro cess lo cal to the B ACnet devic e in
- the Present_Value property and the Reliab ility property, if capable of taking on values other than
NO_FA ULT_DETECTED, sh all be writable to allow p ro perties may be changed to any value as a means of
- O ther other functions that dep end on the state o f the Present_Value or Reliab ility pro perties shall resp o nd to
c hanges made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o ccurred in the inp ut.
This p ro p erty, of typ e B O O LEAN, indicates and c ontro ls whether (TRUE) or no t (F ALS E) the object is out of service.
- the Present_Value p rop erty is deco up led and is no t updated to track the values o f the gro up memb ers ; .
- In additio n, the Reliab ility p ro p erty , if present, and the c o rresp o nding state of the F AULT flag of the
S tatus_F lags p ro p erty shall be deco up led from their no rmal calculatio ns the state of the object; when
- While the O ut_O f_S ervice p ro p erty is TRUE, the Reliab ility p ro p erty, if present and capable of taking on
values other than NO_FA ULT_DETECTED, shall be writable to allow may b e c hanged to any value as a means
- O ther other functions that depend o n the state o f the Reliab ility p rop erty shall resp ond to changes made to this
propertythese p ro p erties while O ut_O f_S ervic e is TRUE as if tho se changes had o ccurred b y normal op eratio n.
The O ut_O f_S ervic e p ro p erty, o f typ e B O O LEAN is an indic atio n whether (TRUE) o r not (F ALS E) the o b j ect has b een
- This p ro p erty can b e used to disab le the No tificatio n Fo rwarder o b j ect is disabled and does not forward event
notifications; .
- the Reliability property, if capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to
- other functions that depend on the state of the Reliability property shall respond to changes made to this
This p ro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the fo rwarding mechanism that the
- This means that changes to the Present_Value p ro p erty are deco up led fro m the fo rwarding mechanism ; when
- In additio n, the Reliab ility p ro p erty , if present, and the c o rresp o nding state of the FAULT flag of the
S tatus_F lags p ro p erty shall b e deco up led fro m the fo rwarding mechanism ; when O ut_O f_S ervic e is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Present_Value property and the Reliab ility property, if
present and capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to allow
p ro p erties may still be changed to any value as a means of simulating sp ec ific fixed conditio ns o r for testing
p urpo ses ; .
- O ther other functions that dep end on the state o f the Present_Value or Reliab ility pro perties shall resp o nd to
c hanges made to these p rop erties while O ut_O f_S ervic e is TRUE, as if tho se changes had o cc urred and had
S ince the Channel o b j ect do es no t directly imp lement command p rio ritizatio n, the Present_Value pro p erty shall no t be
required to imp lement the B ACnet c o mmand p rio ritizatio n mechanism when O ut_O f_S ervice is TRUE. S ee Clause 1 9 .
[ This O ut_O f_S ervice c lause is identical to that for the o ther o utp ut o b j ec t typ es excep t fo r the last bullet p o int which
This The Out_Of_Service prop erty, o f typ e B O O LEAN, indicates whether (TRUE) o r no t (F ALS E) the p hysical po int
- This means that c hanges to the Present_Value p ro p erty are deco up led fro m the physical lighting o utput; when
- In additio n, the Reliab ility p ro p erty , if present, and the co rresp o nding state of the F AULT flag of the
S tatus_F lags p ro p erty shall b e deco up led fro m the p hysical lighting outp ut; when O ut_O f_S ervic e is TRUE.
- While the O ut_O f_S ervice pro p erty is TRUE, the Present_Value property and the Reliab ility property, if
present and capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to allow
p ro p erties may still be changed to any value as a means of simulating sp ecific fixed c onditio ns o r for testing
p urpo ses ; .
- O ther other functions that dep end on the state o f the Present_Value or Reliab ility pro perties shall resp o nd to
changes made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o ccurred to the
- The the Present_Value pro p erty shall still b e contro lled b y the B ACnet co mmand prio ritizatio n mechanism and
The O ut_O f_S ervice pro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the netwo rk p ort is
o ut o f servic e.
- all B ACnet co mmunicatio n thro ugh that the p o rt shall b e disab led; ,
- and writing any value o ther than RES TART_PO RT, D IS CO NNE CT, and or D IS CARD _CHANGES to the
Co mmand p rop erty shall result in an erro r resp o nse with an ‘ Erro r Class’ o f PRO PE RT Y and ‘ Erro r Co de’ of
- the Reliability property, if present, and the corresponding state of the FA ULT flag of the Status_Flags property
- the Reliability property, if capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to
- other functions that depend on the state of the Reliability property shall respond to changes made to the
The O ut_O f_S ervic e p rop erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (F ALS E) the timer this o b j ec t
If When O ut_O f_S ervic e is F ALS E, the timer is functio ning as sp ecified.
- the o b j ect shall b ehave as sp ecified, excep t that Present_Value shall no t auto matic ally co unt do wn in the
RUNNING state. ;
- While O ut_O f_S ervice is TRUE, the Present_Value property and the Reliab ility property, if present and
capable of taking on values other than NO_FA ULT_DETECTED, shall be writable to allow p ro p erties may be
changed as a means o f simulating states and transitio ns, o r for testing p urp o ses ; .
- other functions that depend on the state of the Present_Value and Reliability properties, such as timer state
changes, shall respond to changes made to that, as if those changes had occurred while Out_Of_Service was
FA LSE.
Writing values to Present_Value shall c ause the timer to p erfo rm resp ec tive timer state transitio ns as sp ecified
in the state machine descrip tion. If an event algo rithm and/o r reliab ility evaluatio n is in p lace, it shall p erfo rm its
The O ut_O f_S ervic e p ro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (F ALS E) the o b j ect is
deco up led from the lift that this o b j ect rep resents.
- This means that the o b j ect do es no t track the status o f the lift;
- , and the ob j ect will no t co ntro l the lift o p eratio n. The and the value o f this p ro p erty shall have no effec t o n the
- While this p ro p erty has a value o f TRUE, the status p ro p erties As signed_Landing_Calls, Registered_Car_Call,
Car_Po sitio n, Car_Mo ving_Directio n, Car_Assigned_D irectio n, Car_D o o r_S tatus, Car_D o o r_Zone, Car_Lo ad,
Next_S to p p ing_Flo o r, Passenger_Alarm, Energy_Meter, Car_D rive_S tatus, F ault_S ignals, and
Landing_D o o r_S tatus shall no t trac k the status of the lift. These pro p erties and shall be writab le ; while
- While this p ro p erty has a value of TRUE, the pro p erties Making_Car_Call, Car_D o o r_Co mmand, and
Car_Mo de, shall not track the respective values currently applied by the lift, shall no t have any effect o n the
o p eratio n o f the lift, . In additio n, these p ro p erties shall no t track the resp ec tive values currently ap p lied b y the
lift. These p ro p erties and shall b e writab le ; while O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervic e p ro p erty is TRUE, the p ro p erties listed in this clause no rmally indicating status or
c urrently ap p lied contro l values shall be writable to allow may be changed to any value as a means of
- O b j ect other functio ns that dep end o n the state of any of the aforementioned these p ro perties shall resp o nd to
c hanges made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o ccurred in the lift.
The O ut_O f_S ervice p ro p erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) or no t (FALS E) the o b j ect is
- This means that the o b j ect do es no t track the status o f the escalato r; , and
- the o b j ect will no t co ntro l the esc alato r o p eration. The and the value o f this pro p erty shall have no effect o n the
- While this p ro p erty has a value of TRUE, the status p rop erties Po wer_Mo de, O p eratio n_D irection,
Energy_Meter, Fault_S ignals, and Passenger_Alarm shall no t track the status of the escalato r. These p ro p erties
- While this p ro p erty has a value of TRUE, the p ro p erty Escalato r_Mo de shall no t have any effect on the
o p eratio n o f the escalato r, . In additio n, this p rop erty shall no t track the resp ective value currently app lied b y the
lift, and. The pro p erty Escalato r_Mo de shall b e writab le ; while O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervic e p ro p erty is TRUE, the p ro p erties listed in this c lause no rmally indicating status or
c urrently ap p lied contro l values shall be writable to allow may be changed to any value as a means of
- O b j ect other functio ns that dep end o n the state o f these any of the aforementioned p rop erties shall resp o nd to
c hanges made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o cc urred in the
escalato r.
[Replace Clause 12.61.10 , Accumulator obj ect type with the following language]
12.61.10 Out_Of_Service
The O ut_O f_S ervice p rop erty, o f typ e B O O LEAN, is an indicatio n whether (TRUE) o r no t (F ALS E) the physical input
- This means that the Present_Value and Pulse_Rate p ro p erties are dec oup led fro m the physical inp ut and will no t
trac k changes to the physical inp ut when the value o f Out_Of_S ervic e is TRUE.
- In additio n, the Reliab ility p ro p erty, if p resent, and the co rresp o nding state of the F AULT flag of the
S tatus_F lags p ro p erty shall b e deco up led fro m the p hysical inp ut; when O ut_O f_S ervice is TRUE.
- While the O ut_O f_S ervice p ro p erty is TRUE, the Present_Value, and Pulse_Rate properties and the Reliab ility
property, if present and capable of taking on values other than NO_FA ULT_DETECTED, p rop erties may be
c hanged to any value as a means o f shall be writable to allow simulating sp ecific fixed co nditio ns o r fo r testing
p urpo ses.
- O ther other func tions that dep end on the state o f the Present_Value, Pulse_Rate o r Reliab ility p ro p erties shall
resp o nd to changes made to these p ro p erties while O ut_O f_S ervice is TRUE, as if tho se changes had o c curred
The MS /TP p arameter Tusage_timeout as defined in Clause 9. 5 . 3 has b een misinterpreted by so me imp lementers sinc e it
allo ws up to 1 0 0 ms o f delay fo r no des to rep ly to Po llF o rMaster o r to b egin using a p assed to ken. The current language is
unfo rtunately vague and imp lies that an imp lementatio n may use a value as small as 2 0 ms or as large as 1 0 0 ms. The
intentio n was always that the definitio n o f Tusage_delay wo uld require that devices always rep ly within 1 5 ms, but the wide
variatio n in Tusage_timeout was misleading to so me imp lemento rs. This creates an intero p erab ility issue if a " 2 0 ms" device
Tusage_timeout The minimum time witho ut a D ataAvailab le o r ReceiveError event that a node must wait fo r a
remo te no de to b egin using a to ken o r rep lying to a Po ll F o r Master frame: 2 0 milliseco nds.
(Imp lementations may use larger values fo r this timeo ut, no t to exceed 1 0 0 35 millisec o nds. )
The standard allo ws fo r MS /TP devices to make vario us choices in their imp lementatio n. There is no standard method fo r
Also , the current language limits the numb er o f nodes p er segment to 3 2 due to the EIA- 4 8 5 standard. Ho wever, EIA-
48 5 sp ecifies 3 2 unit lo ads, no t 3 2 no des. Early EIA- 4 8 5 transceivers were o ne unit lo ad, b ut to day, 1 /2 , 1 /4 , and even
1 /8 lo ad transceivers are availab le, allo wing the p o ssib ility o f up to 8 * 3 2 , o r 2 5 6 nodes per segment.
The PICS is extended to allo w sp ecificatio n o f the imp lementatio n c ho ices, including unit lo ads, o f the MS /TP p ro duct.
Additio nal nodes unit loads may b e acc o mmo dated b y the use o f rep eaters, as describ ed in Clause 9 . 9 .
...
fo llo wing choices are imp ortant in terms o f MS /TP interop erab ility:
(b ) iso lated o r non- iso lated po wer so urce for EIA/TIA-4 8 5 transceiver
Each MS /TP device shall indicate all o f this info rmatio n in its Pro to co l Imp lementation Co nfo rmanc e S tatement
(PICS ) . S ee Annex A.
o r either.
po wer so urce, or no t. D esigns that imp lement such a p o wer so urce shall b e called IS O LATED , and designs that do
9 . 2 . 2 ) , as having “Lo cal B ias 4 7 K. ” D evices witho ut 47 K ohms b iasing shall indicate “Local B ias no ne. ”
where X is 1, ½, ¼, or ⅛.
9.X.5 Data Rates
The PICS shall inc lude a list o f each data rate sup p orted by the device.
[ Change Annex A ]
MS /TP master (Clause 9 ) , b aud rate(s) :
Master Slave
Non-isolated transceiver Isolated transceiver
⅛
Local 47K ohms bias resistors None Other: ____________________
Transceiver unit loading: 1 ½ ¼
MS /TP slave (Clause 9 ) , b aud rate(s) :
. . .
. . .
S o me MS /TP frames sent to a master device b eing in ID LE state are no t valid frames in that state, so they are unwanted
frames and sho uld b e igno red. Excep t that the ReceivedValidFrame flag sho uld b e reset to F ALS E to signal the message
is p ro cessed and to allo w a next rec eived message b eing fed into the state mac hine.
A new c o nditio n is included in the master node's state mac hine state ID LE, in sectio n ReceivedUnwantedF rame, to
9.5.6.2 IDLE
In the ID LE state, the no de waits fo r a frame.
. . .
ReceivedUnwantedFrame
(b) DestinationAddress is equal to 25 5 (broadcast) and FrameType has a value of Token, Test_Request, or a
proprietary type known to this node that expects a reply (such frames may not be broadcast) or
(c) FrameType has a value that indicates a standard or proprietary type that is not known to this node or
(d) DestinationA ddress is equal to TS and FrameType is equal to Reply To Poll For Master or Reply Postponed,
then an unexpected or unwanted frame was received. S et ReceivedValidFrame to F ALS E, and enter the IDLE state
. . .
135-2016bn -1. Make SCHED BIBBs consistent on supported datatypes, and add BOOLEAN.
Rationale
The datatyp es whic h must be sup p o rted in B IB B S CHED - E- B and S CHED - VM- A are no t currently sp ecified in the
standard.
B IB B S CHE D - E- B sp ec ifies the minimum requirements, in terms o f datatyp es which must b e sup p o rted. The datatyp es
sp ecified by S CHED - VM- A are aligned, in o rder that these B IB B s have meaningful utility when c omp aring devic es
[ Change K.3.3 ]
D evices at Protocol_Revision X or higher, and c laiming co nfo rmanc e to S CHED - E- B s hall at a minimum support the
writing of primitive datatypes BOOLEA N, REA L, Enumerated, and Unsigned32 to all standard properties of those
datatypes in any standard objects. A Schedule object in the device shall support the writing of primitive datatype NULL
to commandable standard properties in standard objects. This occurs when the value in the Relinquish_Default property
is NULL and no schedule actions are in effect from the Weekly_Schedule and Exception_Schedule properties. Scheduling
The device shall also sup po rt S CHED - I- B and D S - WP- A. The List_O f_Ob j ect_Pro perty_Referenc es pro p erty shall
D evices claiming sup po rt fo r this B IB B shall b e cap ab le o f presenting, and mo difying S chedule ob j ec ts that schedule any
and which may co ntain NULL values and shall be c ap ab le o f changing the datatyp e that a S chedule ob j ect schedules.
S c hedule ob j ects c o ntain a numb er o f p rop erties that need to be consistent in the datatyp e of the values they co ntain.
D evices claiming sup po rt fo r this B IB B shall b e p rep ared to interact with , as well as allow disp lay and mo dificatio n o f,
S c hedule ob j ects that are self- inco nsistent. A self- inco nsistent S c hedule o b j ect is o ne in which the scheduled values in
the Weekly_S chedule, Exc ep tio n_S chedule, and S chedule_D efault p rop erties are no t all o f the same datatyp e o r in which
the co ntro lled o b j ects are no t all o f the same datatyp e o r are o f a datatyp e different than the sc heduled values.
Devices claiming sup p ort for this B IB B shall b e cap ab le o f creating, deleting, p resenting, and mo difying Timer ob j ects
and shall b e cap ab le o f changing the datatyp e that a Timer o b j ect writes, and shall b e cap ab le o f setting the 'No Value'
op tio n. Timer o b j ects c ontain a numb er o f p ro p erties that need to b e co nsistent in the datatyp e o f the values they c ontain.
Devic es claiming sup po rt fo r this B IB B shall b e p rep ared to interact with, as well as allow disp lay and mo dific atio n o f,
Timer ob j ects that are self- inco nsistent. A self- inco nsistent Timer o b j ect is one in which the values to write in the
S tate_Change_Values p ro p erty are no t all o f the same datatyp e o r in which the co ntro lled o b j ects are no t all o f the same
...
D evices c laiming sup po rt fo r this B IB B shall b e c ap ab le o f presenting, and mo difying S chedule ob j ects that schedule any
Devices claiming sup p o rt fo r this B IB B shall b e cap ab le o f p resenting and mo difying Timer o b j ec ts that write any o f the
...
Devic es claiming sup po rt fo r this B IB B shall b e cap ab le o f presenting, and mo difying S chedule ob j ec ts that schedule any
The A device shall b e c ap ab le o f p resenting and mo difying S chedule o b j ects o f the fo rms defined b o th prio r to , and in
Pro to co l_Revisio n 4 .
...
If all S ub sc rib eCO V and/o r S ub scrib eCO VPro p erty requests are initiated with the ‘ Issue Co nfirmed No tificatio ns’ flag
either consistently TRUE or co nsistently F ALS E, then no legitimate CO V no tificatio n service request of the o ther
p o larity of the flag would ever b e received. The D S - CO V- A and D S - CO VP- A B IB B s are c hanged to no t require both
services b e executed. No te that the D S - CO VM- A already requires o nly o ne typ e of CO V multip le no tificatio n exec ution.
The D S - CO VP- A B IB B requirements are inco nsistent with the S ub scrib eCO VPro p erty service definitio n regarding the
'Lifetime ' p arameter. The DS - CO VP- A and D S - CO VP- B B IB B s are made co nsistent with S ub sc rib eCO VPro p erty
Also , it is unclear which CO V related B IB B s require supp o rt o f cancellatio n o f sub scrip tio ns. The D S - CO V- A, DS -
S ub scrib eCO V x
1
Co nfirmedCO VNo tific atio n x
1
Unco nfirmedCO VNo tificatio n x
1
Execution of at least one of these services is required.
S up p o rt fo r sub scrip tio ns of a limited lifetime is required, and supp o rt fo r sub scrip tio ns of indefinite lifetime is o p tio nal.
Support for cancellation is optional, except in the case where the device is able to request indefinite subscriptions, in
1
Co nfirmedCO VNo tific atio n x
1
Unco nfirmedCO VNo tificatio n x
1
Execution of at least one of these services is required.
S up p o rt fo r sub scrip tio ns of a limited lifetime is required, and supp o rt fo r sub sc rip tio ns of indefinite lifetime is o p tio nal.
Devices claiming conformance to DS -CO VP- B shall support a minimum of five concurrent subscriptions. S upport for
subscriptions of a limited lifetime is required, and support for subscriptions of indefinite lifetime is optional.
A device that initiates AcknowledgeAlarm requests is typ ically so p histicated eno ugh that it is no t unreaso nab le to require
the device co ntains a clo ck and p ro duce B ACnetD ateT ime fo rm timestamp s fo r the ‘ Time of Ackno wledgment’
p arameter.
The requirement to sup p o rt the Lo c al_D ate and Lo cal_Time p ro p erties fo r AE- ACK- A will mandate that the ‘ Time of
Ackno wledgment’ p arameter of the Ackno wledgeAlarm request is filled with a B ACnetTimeS tamp of typ e
Ackno wledgeAlarm x
Devices claiming conformance to A E-A CK-A shall also support the Local_Date and Local_Time properties in the Device
object.
135-2016bp-1. Make rules for POST consistent with rules for PUT.
Ratio nale
W. 2 9 . 1 lists the " co mp uted metadata" that can't be PUT to the server, b ut W. 2 8 do es no t make a similar p ro hib itio n
PO S Ting a fully formed data to the p ath o f the co llectio n. The server shall first check that the type of the provided data
matches the target's member type and that none of the server-computed metadata, 'count', 'children', 'descendants',
'truncated', 'history', 'valueA ge', 'etag', 'next', 'self', 'edit', 'failures', or 'id', are present. If these basic conditions are not
. . .
135-2016 bp -2. Make 'type' consistent at all levels and introduce 'effectiveType'.
Ratio nale
The requirement in W. 1 5 . 4 that the ' typ e' change meaning at the to p level do es no t fully sup p ort data that is defined to b e
an " Any" . Instances that rep lac e a defined " Any" need two " typ es" . Their " effective typ e" o r " defined typ e" is sp ecified
b y Clause W. 1 5 . 4 to b e the locatio n in a named definitio n where the Any is dec lared. B ut when that Any is rep laced at
run- time, it also has a " given typ e" also kno wn as " actual typ e" or " runtime typ e. " B oth the " effective typ e" and the
" given typ e" are valid and the to tal set o f metadata fo r the data item is the co mb inatio n o f the metadata fro m the two
typ es.
The p ro b lem is that, as currently required b y W. 1 5 . 4 , the p ro to co l only returns o ne 'typ e', and that is sp ecified to b e the
" effective typ e" . S o the " given typ e" for an Any is masked and the client canno t determine ho w to p rop erly co nsume o r
No te that this p ro b lem ap p lies o nly to 'Any' memb ers of a S equenc e, Co mp o sitio n, o r O b j ect. It is no t a p ro b lem fo r
co llectio ns (Co llectio n/Array/List/S equenceO f) o f 'Anys’ . This is b ecause there is no " effective typ e" in that case. A
definitio n for a co llec tio n o f 'Any' can't sp ecify any metadata fo r its memb ers; therefo re, it is no t augmenting the
memb er's given typ e and there is no co nflic t (the effective typ e is the same as the given typ e in this case, and there is no
It is critical fo r clients to b e ab le to dec ode data, esp ecially JS O N enco dings where the $ base is no t always included and
therefo re the c lient needs to kno w the type definition in order to kno w the b ase typ es.
<S tring name=" innerS tring" disp layName=" InnerS tring" />
If the c lient asks fo r an instanc e o f " 5 5 5 - O uter" , there is no p ro b lem b ecause the " given typ e" o f the inner is co nveyed by
the 'typ e' attrib ute and the " effective typ e" o f " 5 5 5 - O uter/innerAny" is imp lied by its co ntainment.
<S equence name=" innerAny" typ e=" 0- B ACnetAddress" >… </S equence>
Ho wever, if the c lient drills do wn to the Any, there is a p rob lem sinc e the standard currently requires the 'typ e' o n the top
level item b e the " effective typ e" , which masks the runtime typ e o f the data and the c lient no lo nger kno ws that the data is
<S equenc e name=" inner" typ e=" 5 5 5 - O uter/inner" >… </S equence>
The pro b lem is so lved by pro viding the given 'typ e' and the effec tive typ e as defined b y Clause W. 1 5 . 4 in a sep arate
'effectiveTyp e' metadata. This makes 'typ e ' co nsistent at all levels, as its meaning do es no t c hange fo r the to p level o nly.
<Seq u ence name="in ner" effectiveType="555-Outer/i nner" type="0-BACnetAd d ress" >… </Sequ ence>
Clause W.15.X
[ Insert new ]
p resent at the to p level in respo nse o r anywhere that it canno t b e derived b y context. F o r examp le, if the defined typ e of
a data item is 'Any' then an instance o f that will need a 'typ e' metadata to indic ate the actual instance typ e.
[ ChangeClause W.15.4 ]
o rder to infer the elided metadata values. If the top level resp o nse data is a direc t instanc e o f a named typ e, then that is
easy and the 'typ e' metadata direc tly sp ecifies that named typ e. B ut if the client has " drilled do wn" into an instance using
a URI p ath that references data that is only a p art of a larger named typ e, then the server needs to reflect that information
in the 'typ e' 'effectiveType' metadata so the client can know what higher level named definitio n the referenc ed data was
instantiated fro m. Therefo re, fo r the top level data item in a resp o nse:
(a) If the data item is a direct instance o f a defined typ e, then the 'typ e' metadata o n the data item shall simp ly
be the name of that typ e definitio n. This includes memb ers o f co llectio ns that use 'memb erTyp e' since no
(b ) If the data item is a p art o f an instance o f larger data definitio n (it has an anonymo us type) , then the 'typ e'
'effectiveType' metadata shall b e the name o f the o utermo st ap p licab le definition p lus a slash- sep arated p ath
do wn to that data item. This includes memb ers of co llectio ns that use 'memb erTyp eD efinitio n', since
. . .
F o r an instanc e of " B " at /b , the server shall return the 'typ e' 'effectiveType' metadata, and the client shall infer the
effective value o f the 'co mment' metadata, fo r the fo llo wing p aths:
/b /a1 /$ effectiveType typ e = " B /a1 " /b /a1 /$ comment = " co mment o n B /a1 "
/b /a3 /$ effectiveType typ e = " B /a3 " /b /a3 /$ comment = " co mment o n A/a3 "
/b /b 1 /a1 /$ effectiveType typ e = " B /b 1 /a1 " /b /b 1 /a1 /$ co mment = " co mment o n B /a1 "
/b /b 1 /a2 /$ effectiveType typ e = " B /b 1 /a2 " /b /b 1 /a2 /$ co mment = " co mment o n
B /b 1 /a2 "
/b /b 1 /a3 /$ effectiveType typ e = " B /b 1 /a3 " /b /b 1 /a3 /$ co mment = " co mment o n A/a3 "
/b /b 2 /{ n} /a3 /$ effectiveType typ e = " A/a3 " /b /b 2 /{ n} /a3 /$ c o mment = " c o mment o n A/a3 "
/b /b 3 /{ n} /$ effectiveType typ e = " B /b 3 /$ memb erTyp eD efinitio n/1 " /b /b 3 /{ n} /$ co mment = " an ano n extensio n o f
A"
/b /b 3 /{ n} /a1 /$ effectiveType typ e = " B /b 3 /$ memb erTyp eD efinitio n/1 /a1 " /b /b 2 /{ n} /a1 /$ comment = " "
/b /b 3 /{ n} /a2 /$ effectiveType typ e = " B /b 3 /$ memb erTyp eD efinitio n/1 /a2 " /b /b 3 /{ n} /a2 /$ comment = " c o mment on
B /b 3 /? /a2 "
/b /b 3 /{ n} /a3 /$ effectiveType typ e = " B /b 3 /$ memb erTyp eD efinitio n/1 /a3 " /b /b 2 /{ n} /a3 /$ c omment = " co mment on A/a3 "
B /b 4 /r"
Y.4.3 'type'
This o p tio nal metadata item, of typ e S tring, indicates the type o f a data item when that item is an instanc e o f a p reviously
defined typ e. If the data item has a defined typ e, then the typ e o f that data c an o nly be c hanged to a typ e that is an
extensio n o f the defined typ e, unless the defined typ e is Any, in whic h case the new typ e is limited to the typ es, or
extensio ns thereo f, allo wed by the definitio n of the Any. S ee Clause W. 1 5 . 4 W. 1 5. X fo r mo re info rmation on the type
metadata item.
Y.4.X 'effectiveType'
This o p tio nal metadata item, of typ e S tring, indic ates the type o f a data item when that item is o nly a p o rtio n of a defined
typ e. This c an b e used in c ontexts where the o uter co ntainer fo r the data is missing and thus the context o f the defining
typ e name. S ee Clause W. 1 5 . 4 fo r mo re info rmation o n the 'effec tiveTyp e' metadata item.
Q.2.1 <CSML>
When used in a file co ntext, the XML syntax defined by this annex is enclo sed in the element <CS ML> (" Co ntrol
S ystems Mo deling Language" ) that has an xml namesp ace of " http: //www. b acnet. o rg/CS ML/1 . 2 "
Q.2.1.4 <Includes>
This o p tio nal c hild element o f <CS ML> p ro vides o ne o r more " inc lude direc tives" instruc ting the co nsumer to include all
o f the info rmation co ntained in o ther CS ML file(s) . The valid child elements o f <Includes> are <Link> elements. There
c an b e multip le <Includes> elements under a <CS ML> element and these may app ear in any po sitio n. The < Includes>
element is structurally equivalent to a < List> . The rules for evaluating Link paths are the same as for the JSON
Data item(s) in the target file are included as if they existed in the place of the < includes> directive, so the directive can
appear anywhere in a file. However, the included items are unordered because < CSML> is defined to be a Collection,
which is unordered, and the < Includes> is defined to be a List of Links, which is also unordered. Therefore, < Includes>
cannot be used inside a Sequence base type or in situations with implied ordering behavior like the auto-assignment of
If the included file has a < CSML> wrapper, the menbers of that collection are included separately.
< Collection>
< /Collection>
and
< Collection>
< /Collection>
< /CSML>
or
< /CSML>
< Collection>
< /Collection>
and
< Collection>
< /Collection>
Z.2.4 "$$includes"
This o p tio nal memb er o f a CS ML o b j ect, of b ase typ e " List o f Link" , p ro vides a list o f directives to include o ther CS ML
do c uments. The value restrictio ns fo r the Links fo llo w the same rules defined in Clause Q. 2. 1 . 4 fo r XML includes.
Co nsumers o f JS O N do cuments are o nly required to include o ther JS O N do c uments. The rules for including data are the
135-2016bp-4. Remove the path syntax from the 'select' query parameter.
Ratio nale
The standard grammar fo r the ' select' query p arameter allo ws fo r " p aths" b ut it did no t also allo w fo r wildcards o n tho se
p aths. Allo wing p aths without wildcards p ro ves to b e imp ractical and no t useful. Rather than intro duce wildcards, this
addendum simp ly remo ves the p ath o p tion sinc e the c omp lexity o f imp lementatio n was no t o utweighed by the b enefit,
given that the standard allo ws the use o f /. multi fo r retrieving multip le no n- contiguous data items.
S elec ting children that do no t exist is no t co nsidered an error and shall b e ignored.
The syntax fo r the selectio n exp ressio n is defined by the fo llo wing grammar. Whitesp ace (sp ace or tab in any
co mb inatio n) is no t sho wn in this grammar definitio n. Whitesp ace is allo wed b etween any o f the items o f the grammar
selectPath = selec tName / " . re quired" / " . o p tio nal" [ " /" selectPath ]
selectName = ". required" / ". optional" / { string matching the name o f the data item}
135-2016 bp-5. Resolve conflicting statements about configuring external authorization servers.
Ratio nale
The o p ening sentence o f Clause W. 3 . 3 . 1 co nflicts with item (d) in that same Clause.
While in the default c o nditio n, the configuratio n of o ther usernames or p asswo rds or the writing of any external
autho rizatio n server info rmatio n shall b e fo rb idden. Therefore, the o nly sec urity configuratio n o p eratio ns that are allo wed
(a) to set the b ase username and passwo rd at " /. auth/int/user" and " /. auth/int/p ass" to non- default values,
(b ) to set the b ase client's id and secret at " /. auth/int/id" and " /. auth/int/secret" to no n- default values,
(c) to set the server UUID at " /. auth/dev- uuid" if no t factory preset and fixed, o r
(d) to co nfigure the external autho rizatio n server info rmatio n and then disab le the internal server b y writing " false"
Tab le W- 1 1 is a vestige o f earlier drafts o f the standard. It is no lo nger valid in the pub lished standard and do es no t
matc h the textual desc rip tio n o f callb acks o r the examp les.
/lo gs/{ n} /reco rds/{ x} S equence a reco rd o f typ e " 0 - B ACnetLogReco rd"
Clause W. 3 . 1 . 4 says:
While in the factory defaults mo de, the autho rity c ertificate(s) shall b e writab le in p lain text, eac h
B ut W. 9 says:
The alt=p lain fo rmat ap p lies to GET and PUT o p eratio ns o nly. O ther methods shall generate a
For the format alt=p lain, the rep resentatio n of p rimitive value data is to return or acc ept the value in p lain text. The
rep resentatio n o f o ther b ase typ es in p lain text is no t defined and shall generate a WS _ERR_NO T_RE PRES ENT AB LE
erro r resp o nse. The HTTP Co ntent- Typ e shall b e set to " text/p lain" . The text is p lac ed directly in the bo dy o f the HTTP
request o r resp o nse, and, sinc e escap ing and quo ting are not necessary, they shall no t b e used. The textual fo rmat shall
b e the same as the 'value ' attrib ute o f the XML fo rmat, with the excep tio n that fo r D ate, Time, and D ateTime b ase typ es,
the textual fo rmat when 'unsp ecifiedValue' is true shall b e " - - - - /- - /-- " , " - - : -- : - - " and " - - -- /- -/- - T- - : - - : -- Z" , resp ectively. The
alt=p lain fo rmat ap p lies to GET and PUT o p eratio ns on primitive base types and for POST operations where the
'memberType' is defined to be a primitive. o nly. O ther metho ds shall generate a WS _ERR_B AD _METHO D error
resp o nse , and other base types shall generate a WS_ERR_VA LUE_FORMA T error response.
. . .
There is no p ro visio n fo r p roprietary erro r numb ers. It is no t desirab le to foresee every erro r co nditio n to use
WS _ERR_O THER.
W.40 Errors
To rep o rt erro rs to the client, the server shall use an ap p ro priate HTTP status c o de with a Co ntent- Typ e o f " text/p lain"
and a resp onse b ody c ontaining text that is b o th machine readab le and human readab le.
The bo dy o f an error respo nse shall c o nsist o f at least o ne line o f text. O ther lines o f text c an b e p ro vided at the server's
o p tio n. The fo rmat o f the first line o f text shall no rmally co nsist o f a questio n mark fo llo wed by a sp ac e fo llo wed b y a
decimal erro r numb er, defined b y the tab le in this clause or vendor-defined, fo llo wed by a human readab le text to p rovide
details. The c o ntent o f the human readab le text is a lo cal matter; ho wever, it is reco mmended that it b e app ro priate to the
. . .
Vendor-defined error numbers for conditions beyond those specified by this standard shall be greater than or equal to
1 000 and the selection of the corresponding HTTP status codes is a local matter but shall be appropriate to the kind of
error detected.
S everal erro r co nditio ns have b een identified that wo uld b enefit fro m standard erro r numbers.
Numb er S tatus
Co de
. . . . . . . . . . . .
XML files have a c ap ab ility that JS O N files lack: a <C S ML > wrap p er. With this wrap p er ab sent, an XML file rep resents
a single data item, but with the wrap p er p resent, an XML file rep resents zero or more data items and can contain only a
<D efinitio ns> sectio n with no data items at all. B ut a JS O N file is assumed o nly to be a single data item, with no
cap ab ility to define a " wrap per, " therefore, it can't c o ntain o nly a $ $ definitio ns sectio n. Also , when inc luding a JS O N
file, the include p ro c esso r do esn't kno w when to include the single to p level o b j ect o r include the memb ers individually
Therefore, this addendum defines the reserved name " . csml" to indicate such a wrap p er. If the outer JS O N o b j ect has
" $ name" : " . csml" , then it b ehaves exactly as its <CS ML> co unterp art - it is assumed to b e a Co llectio n o f zero o r more
data items, and therefo re can have only a $ $ definitio ns and/o r $ $ tagD efinitio ns sectio n(s) and no o ther data items, and
the memb ers are included individually and the o uter JS O N o b j ec t disap p ears the same way the <CS ML> wrap p er
Co llectio n do es.
b eing pro po sed, an exp lic it " $ name" can b e included to p rovide a name for the top level data item. This to p level ob j ect
can have an op tio nal memb er named " $ $ defaultLo c ale" (see Clause Z. 2 . 1 ) .
When used in a file co ntext, the to p level o b j ect shall b e an Annex Y data item o f b ase typ e Co llectio n and shall have a
"$name" of ". csml". This to p level ob j ect is referred to as the " CS ML o b j ect" (Co ntro l S ystems Mo deling Language) and
equivalent to the < CSML> Collection defined in Clause Q. 2. 1 . This o b j ec t can have an op tio nal " $ $ definitio ns" member
(Clause Z. 2 . 2 ) , an o p tional " $ $ tagD efinitio ns" memb er (Clause Z. 2 . 3 ) , an op tio nal " $ $ includes" memb er (Clause Z. 2 . 4 ),
and any numb er and co mb inatio n o f memb ers allo wed b y the Co llectio n b ase typ e. S ince this to p level o b j ect in a file is a
Co llectio n, the metadata " p ub lished" , " autho r" , " descrip tio n" , " dataRev" , etc. , can b e used to p ro vide help ful info rmatio n
to co nsumers. .
. . .
There is no exp licit restric tio n in the 'name ' o f data that is P UT. This can b e dangerous if the c lient is p utting data that has
a different name fro m the target item sinc e this is likely an erro r and needs to b e rej ected.
Up o n receip t o f a p rop erly autho rized PUT, the server shall recursively update the values, metadata, and children in the
target data with the values, metadata, and c hildren in the pro vided data, acc o rding to the rules in the fo llo wing c lause.
When a rule says to " recurse o n" an item, that item b eco mes the new " target" and the rules are fo llo wed again,
If the provided data has a name and that name is not equal to ". anonymous", then that name shall match the target data
item's name. If it does not match, the server shall return a WS_ERR_INCONSISTENT_VA LUES error response.
. . .
135-2016 bp-12. Specify how to evaluate relative paths for collections of links.
Ratio nale
The $ descendants and $ failures metadata are defined to return " relative links" . It is clear fro m the standard textual
descrip tio n what the links are relative to , b ut it is no t p o ssib le fo r an auto mated p ro c esso r fo r the $ target alias to know
Therefore, the standard needs to state that relative p aths in Links are evaluated relative to the p arent o f the Link, unless
the p arent is a co llec tio n (Array/List/Co llec tio n/S equenceO f) o f Links, in whic h case, the p aths are evaluated relative to
the grandp arent o f the Link. This wo rks b ecause $ descendants and $ failure are defined to have a $ memb erTyp e o f Link,
so that that layer of " co llec tion of links" gets skipp ed o ver when evaluating relative links. Ho wever, if Links are p laced
o n a co llectio n (Array / List / Co llectio n / S equenceO f) that do es no t have a $ memb erType o f Link, then the relative links
are evaluated relative to the co llectio n itself. This wo uld b e exp ected b ehavio r, since p utting links o n the co llectio n b ase
typ es is a legitimate thing to do - it' s o nly a " co llec tio ns o f links" layer that gets skip p ed. O ther kinds o f lists o f p o inters
like /. data/o b j ects o r /. data/nodes/p o int don't have this p ro b lem b ecause they co ntain ab so lute links.
Y.4.46 'target'
The 'target' metadata is an alias fo r the data that is b eing po inted at b y the values o f a Link. This metadata is no rmally not
p resent in serialized contexts. If ap p lied to a no n- Link b ase typ e, the 'target' metadata simp ly refers to the data item itself,
i. e. , every data item imp licitly " targets" itself if it is no t actually a link to so me o ther data. This metadata o nly has
p rac tic al use in co ntexts and o p eratio ns (such as web servic es) where it is desirab le to " traverse" through links to the
When applied to a Link base and the value contains a relative path, the relative path is evaluated relative to the parent of
the Link, unless that parent has a 'memberType' of "Link", in which case the relative path is evaluated relative to the
grandparent of the Link. Thus, the evaluation of relative paths "skips over" collections of links, such as 'descendants' or
There is an imp lied p rohib ition against p ro p rietary catego ries fo r the 'metadata' query p arameter.
The standard catego ry identifiers allo wed fo r the 'metadata' query p arameter are defined by the fo llo wing tab le:
. . .
135-2016 bq-1. Fix the Absentee_Limit property of the Access Credential object type.
Ratio nale
F o r the Ab sentee_Limit p ro p erty, it is no t clear if zero is a valid value for the Ab sentee_Limit p ro p erty. The calculation
o f the ab sentee limit sho uld be b ased o n date only, no t time and date. If the Ab sentee_Limit p ro p erty exists in the Access
Credential o b j ect b ut there is no ab sentee limit, then it is amb iguo us as to what value it sho uld b e set to .
The fo llo wing changes co rrec t and clarify the Ab sentee_Limit p ro p erty acc o rdingly.
Table 12-40 . Pro p erties o f the Acc ess Credential O b j ect Typ e
. . .
1
Ab sentee_Limit Unsigned Unsigned1 6 O
. . .
1
If this p rop erty is p resent, then the p rop erty Last_Use_Time shall also b e p resent.
12.35.16 Absentee_Limit
This p rop erty, o f typ e Unsigned Unsigned1 6, sp ecifies the maximum numb er of co nsecutive days during which the
credential this object represents is unused fo r whic h the credential can remain inactive (i. e. , unused) b efo re it b eco mes
disab led. The calc ulatio n of consecutive days inac tivity duratio n is b ased o n the time date o f last use as indic ated b y the
p ro p erty Last_Use_Time. If Last_Use_Time do es no t have a valid time and date, then the ab sentee limit shall be
co nsidered to no t b e exceeded.
A n A bsentee_Limit of 0 specifies that the credential this object represents must be used every day to avoid being disabled
due to inactivity.
When the ab sentee limit is exceeded, the Acc ess Credential shall b e disab led and the value D IS AB LED _INACTIVITY
shall be added to the Reaso n_F o r_D isab le list. The value D IS AB LED _INACTIVITY s hall be removed fro m the list
If this property is present and has the value 65535, then the credential this object represents shall never be disabled due
to inactivity.
135-2016 bq-2. Ensure that the denied or granted access event is generated last.
Ratio nale
A single ac cess transactio n may generate multip le access events. F o r examp le, a p erso n p resenting a credential at a doo r
GRANTED
PAS S B ACK_D ETECTED (“s o ft p assb ack” only repo rts b ut do es no t deny ac cess)
TRACE
Currently, B ACnet do es no t mandate the order in which the events are generated. If the p revio us events were generated
in the order sho wn ab o ve, the last event is the TRACE event. This is the event that remains indicated b y the Access Po int
o b j ec t until the next transactio n takes p lace. Ho wever, this do es no t give the op erator a useful indication of what
hap p ened during the last transactio n. It is p referab le that the GRANTED event is the last e vent generated in a transactio n.
The fo llo wing change mandates that when multip le events are generated within a single ac cess transactio n then the
The value written to Access_Event shall b e sto red in the Access_Event p ro p erty,
(1 ) If this event is the start o f a new access transac tio n, the value o f the Access_Event_Tag pro p erty shall b e
incremented.
The current date and time shall b e sto red in the Access_Event_Time p ro p erty.
The reference to the Ac cess C redential o b j ec t that is asso ciated with this event shall b e sto red in the
The value o f the authentic ation fac to r that is asso ciated with this event shall b e sto red in the
When a single access transaction causes multiple access events to be generated, then the granted event or the denied
event shall be the final event generated. If none of the multiple events are granted or denied events, then the resulting
(This History of Revisions is not part of this standard. It is merely informative and does not contain
requirements necessary for conformance to the standard)
HISTORY OF REVISIONS
Institute on June 1 5 , 2 01 8 .
Institute on June 1 5 , 2 01 8 .
Institute on June 1 5 , 2 01 8 .
Institute on June 1 5 , 2 01 8 .
Institute on June 1 5 , 2 01 8 .
Institute on June 1 5 , 2 01 8 .
Institute on June 1 5 , 2 01 8 .
B OO LEAN.
Institute on June 1 5 , 2 01 8 .
servers
Institute on June 1 5 , 2 01 8 .