Download (direct link):
Scope in Topic Maps is similar to the notion of namespace in other markup languages. Scope specifies the applicability or context of the topic, its occurrences and resources, and its associations. Subjects have a scope. The names of topics are unique within a scope. Resources specified within a particular topic have
17 See Pepper and Moore (2001), Section 2.3.2, "XTM Mandatory Published Subject Indicators," for the specification of these.
the same scope as that topic. That is why topic maps should be merged if they have the same base name; they indicate the same subject having the same scope.
We note that the notion of scope is not explicitly called out by a Topic Maps markup construct but is defined with respect to the naming conventions of topics: Any topic map utilizing or specifying a topic that has the same base name is in the same scope defined by that unique name.
Topic Maps versus RDF
We are now able to compare Topic Maps to RDF.18 We will discuss RDF Schema (abbreviated RDFS) and its constructs as needed to provide context for comparing RDF/S (which is how we will abbreviate the combination of RDF and RDFS) and Topic Maps. In general, however, we will postpone a more detailed description of RDFS to the next chapter.19 We will see that RDF and Topic Maps are fairly aligned; their respective concepts can be reasonably mapped to each other. On the one hand, it will seem as though they provide redundant functionality. On the other hand, we will try to demonstrate that they actually complement each other.
The crucial distinction is this: RDF expresses instance-level semantic relations phrased in terms of a triple. RDFS expresses class-level relations describing acceptable instance-level relations phrased in terms of a triple, which will be described in more detail shortly.
All of the following are equivalent notions of a triple:
<subject, verb, object>
<object1, relationl, object2>
<resource, property, property-value>
In Chapter 5, we examined RDF and RDF Schema. We saw that RDF has the following important concepts: resource, property (and property value), and statement. Let's take a brief look at each of these.
RDF was developed primarily to represent meta data resources about Web objects and to support the meaning-preserving exchange of information about those objects. A resource is anything being described by an RDF expression.
18 For an extended comparison, see Freese (2003).
19 For the RDF specification, see Lassila and Swick (1999). For the most recent revision of the RDF/XML Syntax Specification, see Beckett (2001). For the RDFS specification, see Brickley and Guha (2002).
A resource can be a Web page (an HTML or XML document) in whole or part, a collection of Web pages, and even objects that do not exist on the Web. This is similar to the notion of addressability in XTM; some objects exist in the real world and can only be indicated and not directly accessed. Resources are named by using a URI and can also include an optional anchor identifier.
A property is a specific piece of information used to describe a resource. It can be an aspect, characteristic, attribute, or relation. These can mean different things to different people, so we won't try to distinguish these concepts here but will discuss them in the next chapter. A property of a resource will have a defined meaning and can have a defined range of acceptable property values (either simple enumerated types or more complex values), or they will simply "relate" to other resources and will typically have relationships with other properties. A property value can thus be another resource (again, identified by a URI) or a literal (a primitive XML data type or a simple string).
A statement in RDF pulls resources, properties, and property values together. Statements are typically called triples—though, as we shall see, they can also be viewed as graphs—because they include a subject (the resource), a predicate/verb (the property), and an object (the property value or another resource). For example, the following is an RDF statement in XML serialization syntax:
<j:Creator>John Author Livingston</j:Creator> </rdf:Description>
In this example, the entire statement is delimited by <rdf:RDF> and </rdf:RDF>. The subject here is the resource specified by "http://www.john shome.org/Home/JohnAL". The predicate is property Creator. The object is the resource (literal) John Author Livingston. The statement is equivalent to the English statement:
"The creator of page http://www.johnshome.org/Home/JohnAL is John Author Livingston"
RDF statements can also be depicted as directed graphs. The graph form equivalent to the preceding triple representation is shown in Figure 7.11. Note that the figure is simplified slightly. For example, namespace information has been removed. Actually, the property creator is defined in the namespace prefixed by j:.