2011-02-13

Three predicate types when considering SemWeb displays

When formatting semantic web triplets (subject -> predicate -> object) for display, it is useful to have further information about the predicates that are available. Predicates can be classified into three different types: Related, Independent and Sets. Knowledge of these predicate types can inform presentation of semantic web data in a display.

Related predicates naturally belong together. When all data for a subject is presented a user will generally expect that related predicates are displayed in close proximity to each other and perhaps have a title to name the cluster of predicates (e.g. Personal Data”). Related predicates proximally cluster in a display to reinforce the meaning of each other. Examples of related predicates are: foaf:familyName & foaf:givenName, dc:subject & dc:type and wgs84_pos:lat & wgs84_pos:long (latitude and longitude) . A cluster of related predicates may indicate that a linked ontological class could have been formed from the cluster and linked back to the original subject, but the ontology designers probably decided to simplify the ontology be reducing inter-subject relationships. Examples of this are: foaf:familyName & foaf:givenName could have been moved into a PersonName class but given that almost every person has a name it would be pointless complexity to have done so.

Independent predicates stand completely alone and are not related to other predicates within an ontological class. Note that related and independent should be more considered a continuum of the degree of relatedness between all predicates in an ontological class. Independent predicates are those that do not naturally cluster with other predicates. Examples of independent predicates are: dc:name, rdf:title, and foaf:depiction.

Set predicates can be repeated many times within a subject with different objects in each triplet. This effectively creates a list (or set) of predicate-object pairs within the subject. Examples include: geoname:wikipediaArticle, foaf:knows and gedcom:marriage. Users will generally expect that sets members will be displayed in close proximity. In some display formats it is possible (and perhaps even preferable) to display the predicate label only once.

It is possible to identify set type predicates by examining the rdf data because set type predicates will be repeated with different objects. Automatically identifying related and independent predicates is not so easy because information about these predicate types are not generally contained in the ontological specification. Therefore, additional ontological specification is needed and relatedness/independentness will need to be added by humans once per ontology.

Given that each predicate type has different user expectations for display then a semantic web browser that knows the predicate type contained within an ontological class can make more user appropriate decisions about the display of semantic web data.