The name of a class, property, or enumerator is not a simple string but a triple of strings, each appropriate for use as a name in a different context:
The reference concrete syntax (RCS) name is appropriate for use in a context where a valid name in the SGML reference concrete syntax is required.
The application name specifies a name that is appropriate for use as an identifier in a programming or scripting language. An application name can include multiple words separated by spaces; the name must be transformed to be a valid identifier in the language in which it is to be used, using the normal conventions of that language for multi-word identifiers. For example, the application name “processing instruction”, when bound to a programming language, might become “ProcessingInstruction”, “processing-instruction”, or “PROCESSING_INSTRUCTION”, depending on the language.
The full name is an unabbreviated name appropriate for use in documentation.
These three names are specified by attributes as follows:
rcsnm specifies the RCS name of the property.
appnm specifies the application name of the property; this defaults to the RCS name.
fullnm specifies the full name of the property; this defaults to the application name.
Various elements occurring in a property set define components by referencing them in a specification document. These elements use the following common attributes:
sd specifies the specification document; this defaults to SGML. Formally, the value is the name of a notation. Other allowed values are GenFac for the General Facilities of ISO/IEC 10744 and DSSSL.
clause specifies the applicable clause of the specification document; for SGML this uses the notation of ISO/IEC 13673.