Each NDAttribute (currently either PVAttribute or paramAttribute, other types may be added in the future) is defined with an Attribute tag. (N.B.: Unfortunately there are 2 meanings of attribute here: the NDAttribute and the XML attribute) For each Attribute declaration, there are a number of XML attributes. XML attributes have the syntax name="value". The XML attribute names are case-sensitive and must be lower case, i.e. name="xxx", not NAME="xxx". The XML attribute values are specified by the XML Schema and are always uppercase for datatype and dbrtype attributes. Declares the parameter data type for type="PARAM". It must match the actual data type in the driver or plugin parameter library. Declares the asyn addr (address) for type="PARAM". Declares the data type that will be used to read an EPICS Process Variable value with Channel Access. words to explain this information One-word mnemonic reference that determines the name of the NDAttribute. It is required, must be unique, is case-insensitive, and must start with a letter. It can include only letters, numbers and underscore. (No whitespace or other punctuation.) Declares the source of the NDAttribute. It is required. If type="EPICS_PV" then this is the name of the EPICS PV, which is case-sensitive. If type="PARAM" then this is the drvInfo string that is used in EPICS database files (e.g. ADBase.template) to identify this parameter. This must be identical with the declaration in the source code. Use uppercase letters or numbers or underline. Must start with an uppercase letter. Data type that will be used to read an EPICS_PV value with channel access Data types allowed in the driver or plugin parameter library, and must be "INT", "DOUBLE", or "STRING" (uppercase only). (default) use integer data type Data type that will be used to read an EPICS_PV value with channel access. The allowed values are all uppercase only. (default) use native Channel Access data type