Finally, the implementation perspective on relationships considers how a relationship is realized or encoded in a technology context. The implementation perspective contrasts strongly with the conceptual, structural, and architectural perspectives, which emphasize the meaning and abstract structure of relationships. The implementation perspective is a superset of the lexical perspective because the choice of the language in which to express a relationship is an implementation decision. However, most people think of implementation as all of the decisions about technological form rather than just about the choice of words.
In this book, we focus on the fundamental issues and challenges that apply to all organizing systems, and not just on information-intensive ones that rely extensively on technology. Even with this reduced scope, there are some critical implementation concerns about the notation, syntax, and deployment of the relationships and other descriptions about resources. We briefly introduce some of these issues here and then discuss them in detail in The Forms of Resource Descriptions.
Choice of Implementation
The choice of implementation determines how easy it is to understand and process a set of relationships. For example, the second sentence of this chapter is a natural language implementation of a set of relationships in the Simpson family:
The Simpson family includes a man named Homer and a woman named Marge, the married parents of three sibling children, a boy named Bart and two girls, Lisa and Maggie.
A subject-predicate-object syntax makes the relationships more explicit:
Homer Simpson → is-married-to → Marge Simpson
Homer Simpson → is-parent-of → Bart
Homer Simpson → is-parent-of → Lisa
Homer Simpson → is-parent-of → Maggie
Marge Simpson → is-married-to → Homer Simpson
Marge Simpson → is-parent-of → Bart
Marge Simpson → is-parent-of → Lisa
Marge Simpson → is-parent-of → Maggie
Bart Simpson → is-a → Boy
Lisa Simpson → is-a → Girl
Maggie Simpson → is-a → Girl
In the following example of a potential XML implementation syntax, we emphasize class inclusion relationships by using elements as containers, and the relationships among the members of the family are expressed explicitly through references, using XML’s ID and IDREF attribute types:
<Parents children=”Bart Lisa Maggie”>
<Father name=”Homer” spouse=”Marge” />
<Mother name=”Marge” spouse=”Homer” />
<Children parents=”Homer Marge” >
<Boy name=”Bart” siblings=”Lisa Maggie” />
<Girl name=”Lisa” siblings=”Bart Maggie” />
<Girl name=”Maggie” siblings=”Bart Lisa” />
None of the models we have presented so far in this chapter represents the complexities of modern families that involve multiple marriages and children from more than one marriage, but they are sufficient for our limited demonstration purposes.
Syntax and Grammar
The syntax and grammar of a language consist of the rules that determine which combinations of its words are allowed and are thus grammatical or well-formed. Natural languages have substantial similarities by having nouns, verbs, adjectives and other parts of speech, but they differ greatly in how they arrange them to create sentences. Conformance to the rules for arranging these parts makes a sentence syntactically compliant but does not mean that an expression is semantically comprehensible; the classic example is Chomsky’s anomalous sentence:
Colorless green ideas sleep furiously
Any meaning this sentence has is odd, difficult to visualize, and outside of readily accessible experience, but anyone who knows the English language can recognize that it follows its syntactic rules, as opposed to this sentence, which breaks them and seems completely meaningless:
Ideas colorless sleep furiously green
Requirements for Implementation Syntax
The most basic requirement for implementation syntax is that it can represent all the expressions that it needs to express. For the examples in this chapter, we have used an informal combination of English words and symbols (arrows and parentheses) that you could understand easily, but simple language is incapable of expressing most of what we readily say in English. But this benefit of natural language only accrues to people, and the more restrictive and formal syntax is easier to understand for computers.
A second consideration is that the implementation can be understood and used by its intended users. We can usually express a relationship in different languages while preserving its meaning, just as we can usually implement the same computing functionality in different programming languages. From a semantic perspective these three expressions are equivalent:
My name is Homer Simpson
Mon nom est Homer Simpson
Mein name ist Homer Simpson
However, whether these expressions are equivalent for someone reading them depends on which languages they understand.
An analogous situation occurs with the implementation of web pages. HTML was invented as a language for encoding how web pages look in a browser, and most of the tags in HTML represent the simple structure of an analogous print document. Representing paragraphs, list items and numbered headings with
<H makes using HTML so easy that school children can create web pages. However, the “web for eyes” implemented using HTML is of less efficient or practical for computers that want to treat content as product catalogs, orders, invoices, payments, and other business transactions and information that can be analyzed and processed. This “web for computers” is best implemented using domain-specific vocabularies in XML.
We are assuming a schema that establishes that the
nameattributes are of type ID and that the other attributes are of type IDREFS. This schema allows for polygamy, the possibility of multiple values for the
spouseattribute. Restrictions on the number of spouses can be enforced with Schematron. (Also see the sidebar, Inclusions and References).
(Chomsky 1957) used these now famous sentences to motivate the distinction between syntax and semantics. He argued that since the probability in both cases that the words had previously occurred in this order was essentially zero, statistics of word occurrence could not be part of language knowledge. See.