Nitrous oxide and the problem of default attributes

The textbook omitted the multiplicity for nitrogen in nitrous oxide (N2O). In an XML document the multiplicity would be represented using a multiplicity attribute as in:

<Molecule rdf:ID="m1" title="nitrous oxide">
    <Atom rdf:ID="n1" elementType="N" multiplicity="2"/>
    <Atom rdf:ID="o1" elementType="O"/>
      <atomRef rdf:resource="n1"/>
      <atomRef rdf:resource="o1"/>
However, we now need to specify that there is only one oxygen atom. This can be done in two ways:
  1. Explicitly specify the multiplicity to be 1.
  2. Specify the default multiplicity to be 1.
The default value of an attribute can be specified in the DTD or in the XML Schema. However, one cannot specify default values in RDF or OWL. This is not some kind of defect of the language that can be remedied by adding a new feature. It is a fundamental part of both RDF and OWL that defaults are not possible. The reason for this is worth some discussion as it is closely tied with the notion of monotonicity that is at the heart of the Semantic Web.

The problem with defaults is that they are applied only when some specification is missing. In the case of molecules, we take it for granted that an unspecified multiplicity is 1. This is why one can write H2O for water rather than H2O1. Unfortunately, to conclude that a default value applies one must make a deduction based on the lack of some data. The Semantic Web was designed for inference in an environment where one can never know every fact. Information on the web is necessarily incomplete and fragmentary. In order to deal with this situation, the Semantic Web uses a form of reasoning for which deductions can only be based on what is known, not on what is unknown. This form of reasoning is called monotonic, also known as the open world assumption. A logical system that is nonmonotonic makes some kind of closed world assumption. The most basic form of closed world reasoning is the deduction of a default value when no value has been specified. Defaults are so important to closed world reasoning that nonmonotonic logics are usually called default logics in the research literature.

Default reasoning, and more generally closed world assumptions, are fundamental to modern relational database management systems. This was explained in some detail in the textbook. There are good reasons for database systems to be closed, and also compelling reasons for the Semantic Web to be open. So this naturally leads to the question of how one can reconcile the two. While this problem has not been completely resolved, significant progress has been made. One promising approach is to introduce a notion of a situation which acts as a closed world within the larger open world. One can make closed world inferences within a situation which do not conflict with the overall open world assumption because the inferences are only true within the situation.

The process whereby one constructs a situation from observations is known as situation awareness, and it is the subject of an active research effort. Situation awareness means simply that one knows what is going on around oneself. In operational terms, this means that one knows the information that is relevant to one's task. Situation awareness emerged in the study of operators of complex machinery as found in nuclear power plants, ships, and aircraft. It is now being applied to situations such as emergency response teams, homeland security, and military operations.

Another approach to the reconciliation of open and closed worlds is the use of probabilistic methods. This was discussed in the third part of the textbook.