Building automation and control systems (BACS) - Part 6: Data communication conformance testing (ISO 16484-6:2009)

ISO 16484-6:2009 defines a standard method for verifying that an implementation of the BACnet protocol provides each capability claimed in its Protocol Implementation Conformance Statement (PICS) in conformance with the BACnet standard.
ISO 16484-6:2009 provides a comprehensive set of procedures for verifying the correct implementation of each capability claimed on a BACnet PICS, including upport of each claimed BACnet service, either as an initiator, executor, or both, support of each claimed BACnet object-type, including both required properties and each claimed optional property, support of the BACnet network layer protocol, support of each claimed data link option, and support of all claimed special functionality.

Systeme der Gebäudeautomation - Teil 6: Datenübertragungsprotokoll - Konformitätsprüfung (ISO 16484-6:2009)

Systèmes d'automatisation et de gestion technique du bâtiment - Partie 6: Essais de conformité de la communication de données (ISO 16484-6:2009)

L'ISO 16484-6:2009 définit une méthode normalisée permettant de vérifier qu'une mise en œuvre du protocole BACnet fournit l'ensemble des fonctionnalités citées dans la Déclaration de conformité d'une mise en œuvre de protocole (PICS) correspondante, conformément à la norme BACnet.
L'ISO 16484-6:2009 fournit un ensemble complet de modes opératoires permettant de vérifier la bonne mise en œuvre de chaque fonctionnalité citée dans une déclaration PICS BACnet, notamment la prise en charge de chaque service BACnet déclaré, qu'il s'agisse d'un initiateur, d'un exécutant ou des deux, la prise en charge de chaque type d'objet BACnet déclaré, y compris les propriétés requises et chaque propriété facultative déclarée, la prise en charge du protocole de couche réseau BACnet, la prise en charge de chaque option de liaison de données déclarée, et la prise en charge de toutes les fonctionnalités spéciales déclarées.

Avtomatizacija stavb in sistemi za regulacijo - 6. del: Preskušanje skladnosti protokolov za izmenjavo podatkov (ISO 16484-6:2009)

General Information

Status
Withdrawn
Publication Date
14-Mar-2009
Withdrawal Date
20-May-2014
Current Stage
9960 - Withdrawal effective - Withdrawal
Start Date
21-May-2014
Completion Date
21-May-2014

Relations

Effective Date
22-Dec-2008
Effective Date
28-May-2014
Standard

EN ISO 16484-6:2009

English language
468 pages
Preview
Preview
e-Library read for
1 day

Get Certified

Connect with accredited certification bodies for this standard

BSI Group

BSI (British Standards Institution) is the business standards company that helps organizations make excellence a habit.

UKAS United Kingdom Verified

ICC Evaluation Service

Nonprofit organization that performs technical evaluations of building products.

ANAB United States Verified

Aboma Certification B.V.

Specialized in construction, metal, and transport sectors.

RVA Netherlands Verified

Sponsored listings

Frequently Asked Questions

EN ISO 16484-6:2009 is a standard published by the European Committee for Standardization (CEN). Its full title is "Building automation and control systems (BACS) - Part 6: Data communication conformance testing (ISO 16484-6:2009)". This standard covers: ISO 16484-6:2009 defines a standard method for verifying that an implementation of the BACnet protocol provides each capability claimed in its Protocol Implementation Conformance Statement (PICS) in conformance with the BACnet standard. ISO 16484-6:2009 provides a comprehensive set of procedures for verifying the correct implementation of each capability claimed on a BACnet PICS, including upport of each claimed BACnet service, either as an initiator, executor, or both, support of each claimed BACnet object-type, including both required properties and each claimed optional property, support of the BACnet network layer protocol, support of each claimed data link option, and support of all claimed special functionality.

ISO 16484-6:2009 defines a standard method for verifying that an implementation of the BACnet protocol provides each capability claimed in its Protocol Implementation Conformance Statement (PICS) in conformance with the BACnet standard. ISO 16484-6:2009 provides a comprehensive set of procedures for verifying the correct implementation of each capability claimed on a BACnet PICS, including upport of each claimed BACnet service, either as an initiator, executor, or both, support of each claimed BACnet object-type, including both required properties and each claimed optional property, support of the BACnet network layer protocol, support of each claimed data link option, and support of all claimed special functionality.

EN ISO 16484-6:2009 is classified under the following ICS (International Classification for Standards) categories: 35.240.67 - IT applications in building and construction industry; 35.240.99 - IT applications in other fields; 91.040.01 - Buildings in general; 97.120 - Automatic controls for household use. The ICS classification helps identify the subject area and facilitates finding related standards.

EN ISO 16484-6:2009 has the following relationships with other standards: It is inter standard links to EN ISO 16484-6:2005, EN ISO 16484-6:2014. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

EN ISO 16484-6:2009 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.

Standards Content (Sample)


SLOVENSKI STANDARD
01-julij-2009
1DGRPHãþD
SIST EN ISO 16484-6:2006
Avtomatizacija stavb in sistemi za regulacijo - 6. del: Preskušanje skladnosti
protokolov za izmenjavo podatkov (ISO 16484-6:2009)
Building automation and control systems (BACS) - Part 6: Data communication
conformance testing (ISO 16484-6:2009)
Systeme der Gebäudeautomation - Teil 6: Datenübertragungsprotokoll -
Konformitätsprüfung (ISO 16484-6:2009)
Systèmes d'automatisation et de gestion technique du bâtiment - Partie 6: Essais de
conformité de la communication de données (ISO 16484-6:2009)
Ta slovenski standard je istoveten z: EN ISO 16484-6:2009
ICS:
35.240.99 8SRUDEQLãNHUHãLWYH,7QD IT applications in other fields
GUXJLKSRGURþMLK
97.120 Avtomatske krmilne naprave Automatic controls for
za dom household use
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.

EUROPEAN STANDARD
EN ISO 16484-6
NORME EUROPÉENNE
EUROPÄISCHE NORM
March 2009
ICS 35.240.99; 97.120 Supersedes EN ISO 16484-6:2005
English Version
Building automation and control systems (BACS) - Part 6: Data
communication conformance testing (ISO 16484-6:2009)
Systèmes d'automatisation et de gestion technique du Systeme der Gebäudeautomation - Teil 6:
bâtiment - Partie 6: Essais de conformité de la Datenübertragungsprotokoll - Konformitätsprüfung (ISO
communication de données (ISO 16484-6:2009) 16484-6:2009)
This European Standard was approved by CEN on 21 February 2009.
CEN members are bound to comply with the CEN/CENELEC Internal Regulations which stipulate the conditions for giving this European
Standard the status of a national standard without any alteration. Up-to-date lists and bibliographical references concerning such national
standards may be obtained on application to the CEN Management Centre or to any CEN member.
This European Standard exists in three official versions (English, French, German). A version in any other language made by translation
under the responsibility of a CEN member into its own language and notified to the CEN Management Centre has the same status as the
official versions.
CEN members are the national standards bodies of Austria, Belgium, Bulgaria, Cyprus, Czech Republic, Denmark, Estonia, Finland,
France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal,
Romania, Slovakia, Slovenia, Spain, Sweden, Switzerland and United Kingdom.
EUROPEAN COMMITTEE FOR STANDARDIZATION
COMITÉ EUROPÉEN DE NORMALISATION
EUROPÄISCHES KOMITEE FÜR NORMUNG
Management Centre: Avenue Marnix 17, B-1000 Brussels
© 2009 CEN All rights of exploitation in any form and by any means reserved Ref. No. EN ISO 16484-6:2009: E
worldwide for CEN national Members.

Contents Page
Foreword .3

Foreword
This document (EN ISO 16484-6:2009) has been prepared by Technical Committee ISO/TC 205 "Building
environment design" in collaboration with Technical Committee CEN/TC 247 “Building Automation, Controls
and Building Management”, the secretariat of which is held by SNV.
This European Standard shall be given the status of a national standard, either by publication of an identical
text or by endorsement, at the latest by September 2009, and conflicting national standards shall be
withdrawn at the latest by September 2009.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. CEN [and/or CENELEC] shall not be held responsible for identifying any or all such patent rights.
This document supersedes EN ISO 16484-6:2005.
According to the CEN/CENELEC Internal Regulations, the national standards organizations of the following
countries are bound to implement this European Standard: Austria, Belgium, Bulgaria, Cyprus, Czech
Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia,
Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Slovenia, Spain,
Sweden, Switzerland and the United Kingdom.
Endorsement notice
The text of ISO 16484-6:2009 has been approved by CEN as a EN ISO 16484-6:2009 without any
modification.
INTERNATIONAL ISO
STANDARD 16484-6
Second edition
2009-03-15
Building automation and control systems
(BACS) —
Part 6:
Data communication conformance testing
Systèmes d'automatisation et de gestion technique du bâtiment —
Partie 6: Essais de conformité de la communication de données

Reference number
ISO 16484-6:2009(E)
©
ISO 2009
ISO 16484-6:2009(E)
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.

©  ISO 2009
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii
ISO 16484-6:2009(E)
Contents
CLAUSE PAGE
1 Scope . 1
2 Relationship between this part of ISO 16484 and ANSI/ASHRE 135.1-2007 . 1
3 Terms, definitions and abbreviated terms . 1
4 ELECTRONIC PICS FILE FORMAT . 3
4.1 Character Encoding. 3
4.2 Structure of EPICS Files. 4
4.3 Character Strings. 4
4.4 Notational Rules for Parameter Values. 4
4.5 Sections of the EPICS File. 6
5 EPICS CONSISTENCY TESTS . 22
6 CONVENTIONS FOR SPECIFYING BACnet CONFORMANCE TESTS . 23
6.1 TCSL Components. 24
6.2 TCSL Statements . 25
6.3 Time Dependencies. 29
6.4 BACnet References. 29
7 OBJECT SUPPORT TESTS. 30
7.1 Read Support for Properties in the Test Database. 30
7.2 Write Support for Properties in the Test Database. 30
7.3 Object Functionality Tests . 31
8 APPLICATION SERVICE INITIATION TESTS . 99
8.1 AcknowledgeAlarm Service Initiation Tests . 99
8.2 ConfirmedCOVNotification Service Initiation Tests. 100
8.3 UnconfirmedCOVNotification Service Initiation Tests. 109
8.4 ConfirmedEventNotification Service Initiation Tests. 111
8.5 UnconfirmedEventNotification Service Initiation Tests. 141
8.6 GetAlarmSummary Service Initiation Tests . 147
8.7 GetEnrollmentSummary Service Initiation Tests . 147
8.8 GetEventInformation Service Initiation Tests. 149
8.9 LifeSafetyOperation Service Initiation Tests. 149
8.10 SubscribeCOV Service Initiation Tests . 150
8.11 SubscribeCOVProperty Service Initiation Tests. 151
8.12 AtomicReadFile Service Initiation Tests . 152
8.13 AtomicWriteFile Service Initiation Tests . 152
8.14 AddListElement Service Initiation Tests . 153
8.15 RemoveListElement Service Initiation Tests. 153
8.16 CreateObject Service Initiation Tests. 154
8.17 DeleteObject Service Initiation Tests. 155
8.18 ReadProperty Service Initiation Tests. 155
8.19 ReadPropertyConditional Service Initiation Tests. 156
8.20 ReadPropertyMultiple Service Initiation Tests . 156
8.21 ReadRange Service Initiation Tests . 157
8.22 WriteProperty Service Initiation Tests. 159
8.23 WritePropertyMultiple Service Initiation Tests . 159
8.24 DeviceCommunicationControl Service Initiation Tests. 161
8.25 ConfirmedPrivateTransfer Service Initiation Test . 162
8.26 UnconfirmedPrivateTransfer Service Initiation Test . 163
8.27 ReinitializeDevice Service Initiation Tests. 163
8.28 ConfirmedTextMessage Service Initiation Tests . 164
8.29 UnconfirmedTextMessage Service Initiation Tests . 165
8.30 TimeSynchronization Service Initiation Tests . 166
8.31 UTCTimeSynchronization Service Initiation Tests . 166
8.32 Who-Has Service Initiation Tests . 166
8.33 I-Have Service Initiation Tests . 167
iii
ISO 16484-6:2009(E)
8.34 Who-Is Service Initiation Tests.167
8.35 I-Am Service Initiation Tests .168
8.36 VT-Open Service Initiation Tests.168
8.37 VT-Close Service Initiation Tests .169
8.38 VT-Data Service Initiation Tests.170
8.39 RequestKey Service Initiation Tests .172
8.40 Authenticate Service Initiation Tests .173
9 APPLICATION SERVICE EXECUTION TESTS.176
9.1 AcknowledgeAlarm Service Execution Tests .177
9.2 ConfirmedCOVNotification Service Execution Tests .189
9.3 UnconfirmedCOVNotification Service Execution Tests .193
9.4 ConfirmedEventNotification Service Execution Tests.193
9.5 UnconfirmedEventNotification Service Execution Tests.194
9.6 GetAlarmSummary Service Execution Tests.194
9.7 GetEnrollmentSummary Service Execution Tests .195
9.8 GetEventInformation Service Execution Tests .199
9.9 LifeSafetyOperation Service Execution Test .201
9.10 SubscribeCOV Service Execution Tests .202
9.11 SubscribeCOVProperty Service Execution Tests.207
9.12 AtomicReadFile Service Execution Tests.214
9.13 AtomicWriteFile Service Execution Tests .220
9.14 AddListElement Service Execution Tests.230
9.15 RemoveListElement Service Execution Tests.232
9.16 CreateObject Service Execution Tests .234
9.17 DeleteObject Service Execution Tests .238
9.18 ReadProperty Service Execution Tests .239
9.19 ReadPropertyConditional Service Execution Tests.241
9.20 ReadPropertyMultiple Service Execution Tests.242
9.21 ReadRange Service Execution Tests.249
9.22 WriteProperty Service Execution Tests .251
9.23 WritePropertyMultiple Service Execution Tests.256
9.24 DeviceCommunicationControl Service Execution Test.264
9.25 ConfirmedPrivateTransfer Service Execution Tests .268
9.26 UnconfirmedPrivateTransfer Service Execution Tests .269
9.27 ReinitializeDevice Service Execution Tests.269
9.28 ConfirmedTextMessage Service Execution Tests.271
9.29 UnconfirmedTextMessage Service Execution Tests.273
9.30 TimeSynchronization Service Execution Tests.273
9.31 UTCTimeSynchronization Service Execution Tests.274
9.32 Who-Has Service Execution Tests.275
9.33 Who-Is Service Execution Tests .280
9.34 VT-Open Service Execution Tests.283
9.35 VT-Close Service Execution Tests.284
9.36 VT-Data Service Execution Tests .285
9.37 RequestKey Service Execution Test .286
9.38 Authenticate Service Execution Tests.288
9.39 General Testing of Service Execution.292
10 NETWORK LAYER PROTOCOL TESTS.293
10.1 Processing Application Layer Messages Originating from Remote Networks .293
10.2 Router Functionality Tests .293
10.3 Half-Router Functionality Tests.317
10.4 B/IP PAD Tests.323
10.5 Initiating Network Layer Messages .325
11 LOGICAL LINK LAYER PROTOCOL TESTS.327
11.1 UI Command and Response.327
11.2 XID Command and Response .327
11.3 TEST Command and Response.328
12 DATA LINK LAYER PROTOCOLS TESTS.329
12.1 MS/TP State Machine Tests.329
12.2 PTP State Machine Tests.381
iv
ISO 16484-6:2009(E)
13 SPECIAL FUNCTIONALITY TESTS. 417
13.1 Segmentation . 417
13.2 Time Master. 426
13.3 Character Sets . 427
13.4 Malformed PDUs. 427
13.5 Slave Proxy Tests. 428
14 BACnet/IP Functionality Tests . 431
14.1 Non-BBMD B/IP Device. 431
14.2 Non-BBMD B/IP device Device with a Server Application. 433
14.3 Broadcast Distribution Table Operations. 433
14.4 Foreign Device Table Operations (Negative Tests). 436
14.5 BACnet Broadcast Management (No Foreign Device Table, No Applications). 437
14.6 Foreign Device Management . 438
14.7 Broadcast Management (BBMD, Foreign Devices, Local Application). 440
15 Reporting Test Results. 443
ANNEX A - Example EPICS (INFORMATIVE) . 444

v
ISO 16484-6:2009(E)
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national standards bodies
(ISO member bodies). The work of preparing International Standards is normally carried out through ISO
technical committees. Each member body interested in a subject for which a technical committee has been
established has the right to be represented on that committee. International organizations, governmental and
non-governmental, in liaison with ISO, also take part in the work. ISO collaborates closely with the
International Electrotechnical Commission (IEC) on all matters of electrotechnical standardization.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of technical committees is to prepare International Standards. Draft International Standards
adopted by the technical committees are circulated to the member bodies for voting. Publication as an
International Standard requires approval by at least 75 % of the member bodies casting a vote.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. ISO shall not be held responsible for identifying any or all such patent rights.
ISO 16484-6 was prepared by Technical Committee ISO/TC 205, Building environment design.
This second edition cancels and replaces the first edition (ISO 16484-6:2005), of which it constitutes a minor
revision.
ISO 16484 consists of the following parts, under the general title Building automation and control systems
(BACS):
⎯ Part 2: Hardware
⎯ Part 3: Functions
⎯ Part 5: Data communication protocol
⎯ Part 6: Data communication conformance testing
A Part 1, dealing with project implementation, and a Part 4, dealing with applications, are under development.

vi
INTERNATIONAL STANDARD ISO 16484-6:2009(E)

Building automation and control systems (BACS) —
Part 6:
Data communication conformance testing
1 Scope
This part of ISO 16484 defines a standard method for verifying that an implementation of the BACnet protocol
provides each capability claimed in its Protocol Implementation Conformance Statement (PICS) in
conformance with the BACnet standard.
This part of ISO 16484 provides a comprehensive set of procedures for verifying the correct implementation of
each capability claimed on a BACnet PICS, including
a) support of each claimed BACnet service, either as an initiator, executor, or both,
b) support of each claimed BACnet object-type, including both required properties and each claimed optional
property,
c) support of the BACnet network layer protocol,
d) support of each claimed data link option, and
e) support of all claimed special functionality.
2 Relationship between this part of ISO 16484 and ANSI/ASHRE 135.1-2007
This part of ISO 16484 comprises, from Clause 4 onwards, the US standard ANSI/ASHRE 135.1-2007,
Method of Test for Conformance to BACnet, published by the American National Standards Institute and the
American Society of Heating, Refrigerating and Air-Conditioning Engineers.
3 Terms, definitions and abbreviated terms
For the purposes of this document, the following terms, definitions and abbreviated terms apply.
3.1
local network
network to which a BACnet device is directly connected
3.2
remote network
network that is accessible from a BACnet device only by passing through one or more routers
3.3
test database
database of BACnet functionality and objects created by reading the contents of an EPICS
ISO 16484-6:2009(E)
BNF Backus-Naur Form syntax
EPICS electronic protocol implementation conformance statement
IUT implementation under test
TCSL testing and conformance scripting language
TD testing device
TPI text protocol information
ISO 16484-6:2009(E)
4 ELECTRONIC PICS FILE FORMAT
An electronic protocol implementation conformance statement (EPICS) file contains a BACnet protocol implementation
conformance statement expressed in a standardized text form. EPICS files are machine and human readable
representations of the implementation of BACnet objects and services within a given device. EPICS files shall use the
extension ".TPI" (text protocol information) and contain normal editable text lines consisting of text character codes
ending in carriage return/linefeed pairs (X'0D', X'0A').

EPICS files are used by software testing tools to conduct and interpret the results of tests defined in this standard. An
EPICS file shall accompany any device tested according to the procedures of this standard.
4.1 Character Encoding
BACnet provides for a variety of possible character encodings. The character encodings in BACnet fall into three groups:
octet streams, double octet streams and quad octet streams. Octet streams represent characters as single octet values. In
some cases, such as Microsoft DBCS and JIS C 6226, certain octet values signal that the second octet which follows
should be viewed along with the leading octet as a single value, thus extending the range to greater than 256 possible
characters. In contrast, double octet streams view pairs of octets as representing single characters. The ISO 10646 UCS-2
encoding is an example. The first or leading octet of the pair is the most significant part of the value. Quad octet streams,
such as ISO 10646 UCS-4, treat tuples of four octets at a time as single characters with the first or leading octet being the
most significant.
To accommodate the various encodings that may be used with BACnet device descriptions, EPICS files begin with a
header that serves both to identify the file as an EPICS file, and to identify the particular encoding used. The header
begins with the string "PICS #" where # is replaced by a numeral representing the character set as shown in Table 4-1.

Table 4-1. Character Set Codes
code character set
0 ANSI X3.4
1 Microsoft DBCS
2 JIS C 6226
3 ISO 10646 (UCS-4)
4 ISO 10646 (UCS-2)
5 ISO 8859-1
An octet stream format can be recognized by examining the first eight octets of the EPICS file. Using ANSI X3.4
encoding as an example these eight octets will contain: X'50' X'49' X'43' X'53' X'20' X'30' X'0D' X'0A'. This represents
the text "PICS 0" followed by carriage return and linefeed.

A double octet stream format can be recognized by examining the first 16 octets of the EPICS file. Using ISO 10646
UCS-2 encoding as an example these 16 octets will contain:

X'00' X'50' X'00' X'49' X'00' X'43' X'00' X'53'
X'00' X'20' X'00' X'34' X'00' X'0D' X'00' X'0A'

This represents the text "PICS 4" followed by carriage return and linefeed.

A quad octet stream format can be recognized by examining the first 32 octets of the EPICS file. Using ISO 10646 UCS-
4 as an example these 32 octets will contain:

X'00' X'00' X'00' X'50' X'00' X'00' X'00' X'49'
X'00' X'00' X'00' X'43' X'00' X'00' X'00' X'53'
X'00' X'00' X'00' X'20' X'00' X'00' X'00' X'33'
X'00' X'00' X'00' X'0D' X'00' X'00' X'00' X'0A'

This represents the text "PICS 3" followed by carriage return and linefeed.
ISO 16484-6:2009(E)
4.2 Structure of EPICS Files
EPICS files consist of text lines ending in carriage return/linefeed pairs (X'0D', X'0A') encoded as octet, double octet or
quad octet streams as defined in 4.1. In the rest of this standard, the term "character" will be used to mean one symbol
encoded as one, two, or four octets based on the character encoding used in the EPICS file header. For example, the
character space may be encoded as X'20' or X'0020' or X'00000020'. In this standard all characters will be shown in their
single octet form.
The special symbol ↵ is used in this Clause to signify the presence of a carriage return/linefeed pair (X'0D0A'). Except
within character strings, the character codes tab (X'09'), space (X'20'), carriage return (X'0D') and linefeed (X'0A') shall
be considered to be white space. Any sequence of 1 or more white space characters shall be equivalent to a single white
space character. Except within a character string, a sequence of two dashes (X'2D') shall signify the beginning of a
comment which shall end with the next carriage return/linefeed pair, i.e., the end of the line upon which the -- appears.
Comments shall be considered to be white space, and may thus be inserted freely.

EPICS files shall have, as their first line following the header, the literal text:
BACnet Protocol Implementation Conformance Statement ↵
This text serves as a signature identifying the EPICS file format.

Lines that define the sections of the EPICS (see 4.5) and the particular implementation data for a given device follow the
signature line.
The EPICS file ends with a line containing the following literal text:
End of BACnet Protocol Implementation Conformance Statement ↵
4.3 Character Strings
The occurrence of a double quote (X'22'), single quote (X'27') or accent grave (X'60') shall signify character strings. For
double quotes, the end of the string shall be signified by the next occurrence of a double quote, or the end of the line. For
single quote or accent grave, the end of the string shall be signified by the next occurrence of a single quote (X'27'), or
the end of the line. Thus strings which need to include a single quote or accent grave as a literal character in the string
shall use the double quote quoting method, while strings which need to include double quote shall use the single quote or
accent grave quoting method.
4.4 Notational Rules for Parameter Values
Within each section, parameters may need to be expressed in one of several forms. The following rules govern the format
for parameters:
(a) key words are case insensitive so that X'41' through X'5A' are equivalent to X'61' through X'7A';
(b) null values are shown by the string "NULL";
(c) Boolean values are shown by the strings "T" or "TRUE" if the value is true, or "F" or "FALSE" if the value is
false;
(d) integer values are shown as strings of digits, possibly with a leading minus (-): 12345 or -111;
(e) real values are shown with a decimal point, which may not be the first or last character: 1.23, 0.02, 1.0 but not
.02;
(f) octet strings are shown as pairs of hex digits enclosed in either single quotes (X'2D') or accent graves (X'60'),
and preceded by the letter "X": X'001122';
(g) character strings are represented as one or more characters enclosed in double, single or accent grave quotes as
defined in 4.3: 'text' or 'text' or "text";
(h) bitstrings are shown as a list, enclosed by curly brackets ({ } or X'7B' and X'7D'), of true and false values:
{T,T,F} or {TRUE, TRUE, FALSE}. When the actual value of a bit does not matter, a question mark is used:
{T,T,?};
(i) enumerated values are represented as named, rather than numeric, values. Enumeration names are case
insensitive so that X'41' through X'5A' are equivalent to X'61' through X'7A'. The underscore (X'5F') and dash
(X'2D') are considered equivalent in enumeration names. Proprietary values are shown as a named text with no
whitespace and ending in a non-negative decimal numeric. Each must start with the word "proprietary":
Object_Type, proprietary-object-type-653;
(j) dates are represented enclosed in parenthesis: (Monday, 24-January-1998). Any "wild card" or unspecified field
is shown by an asterisk (X'2A'): (Monday, *-January-1998). The omission of day of week implies that the day is
unspecified: (24-January-1998);
ISO 16484-6:2009(E)
(k) times are represented as hours, minutes, seconds, hundredths in the format hh:mm:ss.xx: 2:05:44.00,
16:54:59.99. Any "wild card" field is shown by an asterisk (X'2A'): 16:54:*.*;
(l) object identifiers are shown enclosed by parentheses, with commas separating the object type and the instance
number: (analog-input, 56). Proprietary object types replace the object type enumeration with the word
"proprietary" followed by the numeric value of the object type: (proprietary 700,1);
(m) constructed data items are represented enclosed by curly brackets ({ } or X'7B' and X'7D'), with elements
separated by commas. If an element is itself a constructed value, then that element shall be enclosed in curly
brackets.
4.4.1 Complex Parameter Values
Some parameter values, notably property values for constructed or CHOICE types of encoded values, need to use a more
complex notation to represent their values. This notation is tied to the ASN.1 encoding for those property values and may
appear obscure out of context. These additional rules govern the presentation of those types of parameter values:

(a) values which are a CHOICE of application-tagged values are represented by the value of the chosen item
encoded as described in 4.4;
(b) values which are a CHOICE of context-tagged values are represented by the context tag number enclosed in
square brackets, followed by the representation of the value of the chosen item;
(c) list values (ASN.1 "SEQUENCE OF") are represented enclosed in parenthsis, with the elements of the list
separated by commas. If an element is itself a constructed value, then that element shall be enclosed in curly
brackets;
(d) array values are represented enclosed in curly brackets, with the elements of the array separated by commas. If
an element is itself a constructed value, then that element shall be enclosed in curly brackets.
4.4.2 Specifying Limits on Parameter Values
Some properties may have restrictions on the range or resolution of their values. In order to correctly interpret the results
of tests in which the value of a property is changed using WriteProperty, WritePropertyMultiple, or AddListElement then
read back using ReadProperty or ReadPropertyMultiple, it is necessary to know what these restrictions are. The test
database may contain restriction statements that define these constraints. The permissible restrictions and the datatypes
they apply to are:
(a) minimum - the minimum value for Unsigned, Integer, Real, or Double datatypes. The earliest date for the Date
datatype;
(b) maximum - the maximum value for Unsigned, Integer, Real, or Double datatypes. The latest date for the Date
datatype;
(c) resolution - the minimum guaranteed resolution for Real and Double datatypes. The minimum time resolution
in seconds for the Time datatype;
(d) maximum length string - the maximum length of a CharacterString or OctetString;
(e) maximum length list - the maximum number of elements guaranteed to fit in a list;
(f) maximum length array - the maximum number of elements in an array;
(g) allowed values - a comma-delimited list of supported enumerations for an Enumerated datatype. A comma-
delimited list of object types for properties that reference an external object identifier.

Restriction statements shall be listed within pointed brackets (< and >) following the default value. If there are multiple
restrictions within a single set of angle brackets, then the restrictions shall be separated by a semicolon (;). A restriction
statement consists of the restriction name followed by a colon (:) followed by the restriction value or, where appropriate,
a comma-delimited list of possible values.

Here are some examples of property values with restriction statements as they could appear in the test database.

present-value: 13.4
description: "this is a description"
units: milliamperes
object-property-reference: (analog input, 12)

The Units property is a special case, because changing the units can change the value of the Present_Value property as
well as any restrictions on its value. Therefore, minimum, maximum, and resolution restrictions are only valid for the
default value of the Units property.

ISO 16484-6:2009(E)
It is possible to specify default restrictions for most datatypes as described in 4.5.8. Restriction statements in the test
database override the default restrictions for the individual property that contains the restriction statement.
4.5 Sections of the EPICS File
Each section of the EPICS file begins with a section name followed by a colon ( : or X'3A'). After the colon is a set of
one or more parameters delimited by a set of curly braces ({ } or X'7B' X'7D').

The following symbols are used as placeholders to indicate the presence of parameter information:
(a) the open box symbol inside quotation marks, "‰", is used to indicate that a character string parameter shall be
present;
(b) the open box symbol with no quotation marks, ‰, is used to indicate that a parameter with a datatype other than
a character string shall
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...