There are several words, more widely used than understood, that recur frequently when discussing standards. Specification and standardization requires us precisely to describe technology in such a way that practitioners in that field can achieve the goals set out in the standard. But this precision is only perfectly intelligible to those who share the same code words. What follows is a handful of the more important ones, what they mean, and how they are unintentionally confused or intentionally misused. You are at a distinct disadvantage when reading (or writing) a news article, a blog post, or evaluating an argument if you do not know the correct meaning of the following words.
Take the definition from ISO/IEC Guide 2:2004, definition 3.2:
[A] document, established by consensus and approved by a recognized body, that provides, for common and repeated use, rules, guidelines or characteristics for activities or their results, aimed at the achievement of the optimum degree of order in a given context.
NOTE Standards should be based on the consolidated results of science, technology and experience, and aimed at the promotion of optimum community benefits.
So, it is a document, a written description, not an embodiment in the form of a product, that is standardized. Its aims are the “achievement of optimum degree of order” and “promotion of optimum community benefits”, and it is achieved through consensus and consolidation.
According to ISO/IEC Guide 2:2004, definition 184.108.40.206:
[A] standard that is adopted by an international standardizing/standards organization and made available to the public.
[An] international standard where the international standards organization is ISO or IEC
Note the distinction. With capital letters only ISO or IEC standards apply. With lowercase, other standards are included. This is a bit self-serving. ISO and IEC Standards are the only International Standards, because ISO says so. Sorry ITU, sorry CEN, sorry W3C.
So think of “International Standards” as a controlled mark of ISO, like “parmigiano reggiano” is a controlled mark of the Northern Italian Cheese Consorzio.
The normative parts of a standard are those which set out the scope and provisions of the standard. See ISO Directives, Part 2, section 3.8.
The provisions of a standard consist of:
- Requirements that must be met for conformance
- Statements of permissible, possible or capable actions
See ISO Directives, Part 2, section 3.12.
Note that standards have specific words which denote and distinguish requirements, recommendations and capabilities. Different standards organizations have different vocabulary for this, so a W3C Recommendation, an IETF RFC and an ISO Standard may have different ways of stating the same provision. For ISO Standards, the conventions are:
- “shall” and “shall not” are the normal terms for expressing requirements.
- “should” and “should not” are the normal terms for expressing recommendations.
- “may” and “need not” are the normal terms for expressing permission.
- “can” and “cannot” are the normal terms for expressing possibility and capability.
This is necessary because of the extreme ambiguity of the English language in the area of modality. Consider the following sentences, using the word “must”:
- (On hearing the doorbell ring), “Oh, that must be the mailman!” [expressing likelihood]
- (To a misbehaving child) “You must obey your mother” [expressing obligation]
Or the following exchange with a teenage daughter:
- Teen: “I shall return by 11pm” [simple future]
- Parent: “No, you shall return by 10pm” [expressing a command]
We can be loose and still be understood, in context, in normal conversation, but in standards work we try to be precise and uniform in the use of our control vocabulary.
This simply is a question of whether something meets the requirements of the standard. However, for many standards, there are multiple levels, perhaps even multiple classes of conformance. So you need to be very specific about what you are saying.
For example, you should not ask “Does Excel 2007 conform to OOXML?” You should ask “Is Excel 2007 a conforming transitional class SpreadsheetML Producer?” If you count it all up, OOXML probably has at least 18 distinct conformance classes, by various combinations of applications, documents, readers/writers and transitional/strict conformance classes.
Not in particular that conformance does not mean that an application implements the entire standard.
[My definition above is not very satisfactory. Anyone have something better? Is there an ISO definition of conformance?]
This is not a typical standards term. The more typical term is “conformance”. Best to avoid it unless you are talking in regulatory or legal context. See ISO Directives, Part 2, section 220.127.116.11:
A document does not in itself impose any obligation upon anyone to follow it. However, such an obligation may be imposed, for example, by legislation or by a contract. In order to be able to claim compliance with a document, the user needs to be able to identify the requirements he/she is obliged to satisfy. The user also needs to be able to distinguish these requirements from other provisions where there is a certain freedom of choice.
This is an XML term, referring to the relationship between an XML document instance (an XML file) and a schema (the definition of the syntax of the markup language). Generally, an XML document instance is valid if it adheres to the constraints defined in the schema. The precise definition of validity will depend on the schema definition language used.
I’d welcome any suggestions for other words or definitions that should be included here.