Computer Standards & Interfaces 31 (2009) 846–855
Contents lists available at ScienceDirect
Computer Standards & Interfaces j o u r n a l h o m e p a g e : w w w. e l s e v i e r. c o m / l o c a t e / c s i
OWL-L: An OWL-based language for Web resources links I-Ching Hsu a,⁎, Yuan Kwei Tzeng b, Der-Cheng Huang b a b
Department of Computer Science and Information Engineering, National Formosa University, 64, Wenhua Rd., Huwei Township, Yunlin County 632, Taiwan Department of Computer Science and Engineering, National Chung-Hsing University, 250 Kuo-Kuang Rd, Taichung, Taiwan
a r t i c l e
i n f o
Article history: Received 22 December 2007 Received in revised form 25 July 2008 Accepted 28 September 2008 Available online 17 November 2008 Keywords: OWL OWL-L XLink Ontology Semantic Web
a b s t r a c t Although providing metadata association, XLink lacks computer-interpretability to support knowledge representation for intelligent applications. This study proposes an OWL-based language, called OWL-L, to make Web resources links computer-interpretable. Two aspects of OWL-L, link profile and link model are described. The link profile provides the information required for an agent to discover a link, while the link model provides information that enables an agent to exploit a link. Finally, this study describes the feasibility of using role/arcRole properties of links to represent OWL-based ontologies, which can thus seamlessly interoperate and integrate with OWL-L to enhance knowledge representation. © 2008 Published by Elsevier B.V.
1. Introduction The XML Linking Language (XLink) [1] provides a surface syntax for generating both basic unidirectional links and complex linking structures. It allows an XML document to associate metadata with a link, and asserts linking relationships among more than two Web resources. Clearly, XLink is a powerful complement to conventional HTML hyperlinks. The main limitation of XLink is that it is an XMLbased development, and thus focuses on syntax and format rather than semantics and knowledge. Therefore, XLink has the advantage of metadata association, but it lacks computer-interpretability to support knowledge representation for intelligent applications. To improve this problem, a mapping from links of XLink to statements in an RDF (Resource Description Framework) model has been defined [2]. Such a mapping allows XLink elements to be harvested as a resource of RDF statements. Additionally, RDF and related specifications are designed to make statements about the resource on the Web (that is, anything that has a URI), without the requirement to change the resource itself. This feature enables document authors to annotate and encode the semantic relationships among resources on the Web. However, RDF alone does not provide basic common structures that help describe the resource classes and represent the types of relationships between resources. A specification with more facilities than those found in RDF to express semantics flexibly is needed. The Semantic Web [3,4] can help solve this problem. The Semantic Web is rapidly becoming a reality through the development of Semantic Web markup languages such as RDF, RDF
⁎ Corresponding author. E-mail address:
[email protected] (I.-C. Hsu). 0920-5489/$ – see front matter © 2008 Published by Elsevier B.V. doi:10.1016/j.csi.2008.09.029
Schema [5], DAML+OIL [6], and OWL (Ontology Web Language) [7]. According to Fig. 1, these markup languages enable the creation of arbitrary domain ontologies that support the unambiguous description of Web content. XLink provides some extra built-in link functionality over RDF, but does not encode semantic relationships as effectively. XLink is a viable alternative for adopting the full power of the Semantic Web technology for encoding extended and external links. OWL, defined by W3C, is more able to express semantics than these languages, and it is superior to others in marking itself as machine-readable. Hence, this study proposes an OWL-based ontology for linking Web resources, called OWL-L, to make Web resources links computer-interpretable. The emerging web ontology language OWL can create an ontology multiple-layered architecture [8] for OWL-L to support the following functions: 1) Supporting expression of semantics to implement domain ontologies [9]. For instance, OWL adds more vocabulary for describing properties and classes: relations between classes (e.g. disjointness), cardinality (e.g. exactly one), equality, richer typing of properties, characteristics of properties (e.g. symmetry), and enumerated classes. OWL has the advantages of efficient reasoning support, sufficient expressive power, and convenient expression. 2) Providing the high level taxonomy from a specific domain to represent classification of concepts and instances [10,11]. The taxonomy ontology can be used to inherit knowledge and facilitate searching. OWL-L is developed to provide the infrastructure for interoperability of terms in the domain of Web resources links. 3) Retrieving the appropriate information from objects by providing a structure to annotate the metadata of a object with semantic information [12,13]. For instance, the link provider adopts OWL-L
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
847
by an agent to determine whether the link meets its rough requirements. Meanwhile, the link model describes what happens when the link is followed. The link model enables an agent to do the following: (1) analyze in more detail whether the link complies with its requirements; (2) compose link descriptions from multiple extended links to perform a specific application; (3) decompose a linkbase to extract the required extended links, and (4) trace and record the navigational behavior of users. Each instance of the OntoLink class is an annotation document encoded in OWL-L. This annotation document contains a link profile and model for describing metadata of Web resources links. The following sections discuss the link profile and model in greater detail. Fig. 1. Layered approach to ontology language development.
3. Link profile to annotate Web resources links metadata, which help software agents to locate, select, and compose links automatically. In XLink, both the role and arcRole attributes provide semantic information. The role attribute indicates the property of a Web resource, while the arcRole attribute describes the objects of an arc's ending Web resource with respect to its starting resource. The values of both the role and arcRole attributes are URI references that identify the Web resources of the intended property. The format of this Web resource is not standardized in XLink, and hence is open for proprietary semantic extensions [14]. OWL-L defines the range of the role/arcRole properties as an owl:Thing, allowing a Web resource to refer to additional semantics through the role/arcRole properties to assign a specific ontology class. This paper is organized as follows. Section 2 presents an upper ontology for OWL-L. Section 3 introduces the link profile ontology. Section 4 gives the details of the link model ontology and its components used in OWL-L. In Section 5, an applicable demonstration is presented to illustrate how the OWL-L can support more power of semantic description capabilities than XLink. Section 6 presents some related works. Finally, summary and concluding remarks are included. 2. An upper ontology for OWL-L The current version of OWL-L builds on the Ontology Web Language (OWL) by following the layered approach to Semantic Web development [15]. The main contribution of OWL-L is to allow software agents to locate and compose links automatically. OWL-L and OWL-S [16,17] are located on the same layer, as shown in Fig. 1. Thus, OWL-L and OWL-S have similar functions and frameworks, describing Web resources to improve the capabilities of search agents. OWL-S and OWL-L differ mainly in that former OWL-S describes the characteristics and capabilities of Web Services, while the latter annotates Web resources links. The Web Services are described with OWL-S, and are referred to as target resources of the links described by OWL-L. Web Services are Web resources that can be described by OWL-L and OWL-S for different purposes. In OWL, abstract concepts of entities or events are defined in terms of classes and properties. OWL-L is based on XLink to define a set of classes and properties, specific to the description of Web resources links, within OWL. The OntoLink, LinkProfile, LinkModel and rdfs: Resource classes are defined in the top level ontology1 of the OWL-L, as shown in Fig. 2. The class OntoLink provides an organizational point of reference for declaring Web resources links. The properties presents, describedBy and providedBy belong to OntoLink. The classes LinkProfile, LinkModel and rdfs:Resource are the respective ranges of those properties. The link profile offers the information required 1 The top level ontology of OWL-L can be found at http://sparc.nfu.edu.tw/~hsuic/ sw/OWL-L/1.0/OntoLink.owl.
While describing what a link does, the link profile ontology2 characterizes the link for purposes of discovery and matchmaking; that is, it gives the information required by a search agent to determine whether the link meets its needs. Link profiles are generally be structured into ontology-based taxonomies, which provide the first level of discrimination in searching for a desired link. The profile includes a high-level description about the link and its characters, as shown in Fig. 3. The xsd, lm, wsp, and owl are the namespaces that represent the XML Schema, Link Model, Web Service Profile, and OWL, respectively. The default namespace of link profile ontology is lp. The link profile ontology provides the following information. title property provides human-readable labels for the link. textDescription property provides a brief description of the link. It summarizes what the link offers, and indicates any additional information that the profile wants to share with the receivers. keyword property provides keywords of the link The emphasized keywords indicate terms whose semantics, or meaning, were defined for the agent through the Semantic Web. has_link property provides a pointer to associate Profile class with Link class. The following axiom states that the has_link property is functional, i.e., a profile can only describe at most one link. LinkPowerSet class is the set of all subsets of Link class. bowl:FunctionalProperty rdf:ID=qhas_linkqN bowl:domain rdf:resource=q#Profileq/N bowl:range rdf:resource=q#LinkPowerSetq/N b/owl:FunctionalPropertyN role property describes the meanings or abstract concepts of the link. The range of role property is the owl:Thing class. This implies the link is an instance of a certain class that is an subclass of owl: Thing, thus it can inherit knowledge from this class . createdBy property records who to create a link. The range of the property is wsp:Actor class that is quoted by Web Services Profile. The wsp:Actor class records address and other information to allow a receiver of the profile to contact the issuer directly. LinkCategory class specifies link classification systems, such as Products, Commercial Services, Information, etc. 4. Link model Web resources are Web-accessible entities, such as Web pages, Web services, pictures, programs, devices, etc. Their links are described in terms of a link model ontology,3 which describes in
2 The link profile ontology of OWL-L can be found at http://sparc.nfu.edu.tw/ ~hsuic/sw/OWL-L/1.0/LinkProfile.owl. 3 The link model ontology of OWL-L can be found at http://sparc.nfu.edu.tw/ ~hsuic/sw/OWL-L/1.0/LinkModel.owl.
848
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
show property is used to communicate the desired presentation of the ending resource on traversal from the starting resource. actuate property is used to communicate the desired timing of traversal from the starting resource to the ending resource. SimpleLink is a subclass of Link, thus it can use a link profile to describe itself. Obviously, this improves semantic description of XLink. In addition, the arcRole property is similar to role property of the Profile class, and provides abstract concepts for ending resources. 4.2. Extended link
Fig. 2. The top level ontology of the OWL-L.
detail both the category and structure of the link. Fig. 4 shows the class inheritance hierarchy and semantic structure of link. The xsd, lp, rdf and owl are the namespaces that represents the XML Schema, Link Profile, RDF and OWL respectively. The default namespace of link model ontology is lm. Link class of OWL-L collects the three types of links: Simple Link, Extended Link and Linkbase. The following axiom contains owl: disjointWith statement that asserts Link class extensions of the three classes descriptions involved have no individuals in common. bowl:Class rdf:ID=q#LinkqN bowl:disjointWith rdf:parseType=qCollectionqN bowl:Class rdf:about=q#SimpleLinkq/N bowl:Class rdf:about=q#ExtendedLinkq/N bowl:Class rdf:about=q#LinkBaseq/N b/owl:disjointWithN b/owl:ClassN The following sections describe in detail the main parts of the link model. The model comprises three types of links, namely simple link, extended link and linkbase. 4.1. Simple link A simple link is a link that associates exactly two resources, one local resource and one locator (remote resource), with an arc going from the former to the latter. It is similar to the simple unidirectional hyperlinks of today's HTML. The following OWL-based fragment of SimpleLink class asserts three limitations: 1. The SimpleLink class is a subclass of Link class. 2. If the SimpleLink class has a show property, then the show property only has values of class showType. 3. If the SimpleLink class has an actuate property, then the actuate property only has values of class actuateType.
Extended links offer full XLink functionality, such as inbound and third-party arcs, as well as links that have arbitrary numbers of participating resources. An extended link can be considered as a directed graph: the link participants are the nodes, and the arcs the directed edges. As a result, their structure can be fairly complex, including properties for pointing to remote resources, classes for containing local resources, and semantic technology for specifying arc traversal rules. Before introducing the structure of an extended link class, the Locator, LocalResource, and OntoArc classes, which are in the extended link, need to be discussed. 4.2.1. Locator class and local resource class An extended link indicates remote resources that participate in it by Locator classes, and indicates its participating local resources by LocalResource classes that appear inside the extended link. The semantic structure of Locator and LocalResource classes are depicted in Fig. 5. title property provides human-readable labels for locators and local resources. role property describes the meaning or abstract concepts for locators and local resources. It is similar to the role property of the Profile class, and the arcRole property of the SimpleLink and OntoArc classes. href property identifies remote resources using URIs and fragment identifiers such as XPointer [18] expressions. The Locator class must have exactly one href property. The following OWL-based fragment contains an owl:Restriction statement that enforces the above constraint. bowl:Class rdf:ID=qLocatorqN brdfs:subClassOfN bowl:Restriction owl:cardinality=q1qN bowl:onProperty rdf:resource=q#hrefq/N b/owl:RestrictionN b/rdfs:subClassOfN b/owl:ClassN
The showType and the actuateType are both rdf:List types, namely data lists. The showType is composed of the values new, replace, embed, none, and other. The actuateType comprises onLoad, onRequest, none, and other. href property provides the address that allows an agent to find a remote resource. arcRole property provides a pointer to refer an property of ontology and acquires additional knowledge about the ending resource. For instance, an ending resource might generically denote a “mother”, but might in the context of a particular arc have the role of “teacher”, and in the context of a different arc have the role of “wife”. Relationship is a general property class that contains all properties. It is the range of arcRole property, this implies arcRole can inherit knowledge from OWL's properties.
Fig. 3. Semantic structure of the Link Profile.
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
849
Fig. 4. Semantic structure and category of the Link.
value property offers the content of the local resource. It must be used in the LocalResource class. ResourceComponent class assigns what is the component of the ResourceBag class. ResourceBag is a subclass of rdf:Bag. It is a container, which can be adopted to contain resources. The owl:item property describes a relation between ResourceBag and ResourceComponent, so that each resource bag is associated with instances of Locator class or LocalResource class. In OWL-L, the resource is identified by an RDF ID rather than by a label in the XLink. The ResourceBag refers to an aggregate resource that contains a set of resources with different IDs. The aggregate resource can replace the set of resources with the same label in the XLink. Each individual resource in the aggregate resource has different roles to quote different ontologies, and the appropriate arcs are specified to generate the identical traversal pairs. WebServices is a subclass of Lactor and collection of all Web Services. This is to emphasize the fact that Web Services is also a kind of remote resources. An OWL-S based annotated document of
Fig. 5. Semantic structure of the relevant resources.
a Web Services can be quoted by href property of Locator in OWL-L. Obviously, OWL-L and OWL-S are semantically interoperable, and thus cooperate with each other to improve the performance and accuracy of semantic web mining. 4.2.2. OntoArc class An extended link may indicate rules for traversing among its participating resources by means of instances of the OntoArc class. In other words, OntoArc can present and describe the linking relationships among more than two participating resources. The OntoArc class can be classified into three subclasses, Outbound, Inbound and ThirdParty (refer to Fig. 4). The arcRole, show, and actuate properties of OntoArc are similar to those of SimpleLink. title property provides human-readable labels for the arcRole. from property assigns the starting resource of an arc. The value of from property, starting resource, is an instance ID of Locator, LocalResource or ResourceBag classes. In contrast with the XLink resources have to identify by the labels. to property assigns the ending resource of an arc. The value of to property, ending resource, is also an instance ID of the Locator, LocalResource or ResourceBag classes. Outbound class has a local starting resource and a remote ending resource goes outbound, that is, away from the linking element. Inbound class has an ending resource is local and a remote starting resource goes inbound. ThirdParty class neither the starting resource nor the ending resource is local, then the arc is a third-party arc. One advantage of XLink is to offer third-party arcs that allow a separation of content and link structure. The ThirdParty class is defined as the following OWL-based fragment. bowl:Class rdf:ID=qThirdPartyqN brdfs:subClassOf rdf:resource=qOntoArcq/N brdfs:subClassOfN bowl:RestrictionN bowl:onProperty rdf:resource=q#fromq/N bowl:allValuesFrom rdf:resource=q#Locatorq/N b/owl:RestrictionN
850
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
Fig. 6. Semantic structure of the Extended Link and LinkBase.
b/rdfs:subClassOfN brdfs:subClassOfN bowl:RestrictionN bowl:onProperty rdf:resource=q#toq/N bowl:allValuesFrom rdf:resource=q#Locatorq/N b/owl:RestrictionN b/rdfs:subClassOfN b/owl:ClassN 4.2.3. Semantic structure of extended link An extended link is a link that associates an arbitrary number of resources and arcs. The participating resources, such as Locator, LocalResource, or ResourceBag classes, may be remote or local resources. The participating arcs, such as Inbound, Outbound, or ThirdParty classes, provide rules for traversal among these participating resources. The semantic structure of ExtendedLink class is shown in Fig. 6. The ExtendedLink is a subclass of Link. It must have exactly one components property. All values for components property must be instances of LinkComponentBag. The ExtendedLink class is defined as the following OWL-based fragment. bowl:Class rdf:ID=qExtendedLinkqN bowl:intersectionOf rdf:parseType=qCollectionqN bowl:Class rdf:about=q#Linkq/N bowl:Restriction owl:cardinality=q1qN bowl:onProperty rdf:resource=q#componentsq/N b/owl:RestrictionN bowl:RestrictionN bowl:onProperty rdf:resource=q#componentsq/N bowl:allValuesFrom rdf:resource=q#LinkComponentBagq/N b/owl:RestrictionN b/owl:intersectionOfN b/owl:ClassN LinkComponent class assigns what is the component of the LinkComponentBag class. 4.3. LinkBase XLink allows the definition of links that reside in a separate location from the linked resources. This feature is useful when resources are read-only, or when can not embed linking constructs, for example when creating links that anchor on multimedia content files. Additionally, XLink provides the definition of link repositories,
called linkbases, which are often used to facilitate link management easier by gathering together several related instances of the ExtendedLink class. Fig. 6 shows the semantic structure of LinkBase. The LinkBase class is a subclass of Link and must have exactly one components property. All values for components property must be instances of LBaseComponentBag, which is a multiset of the ExtendedLink classes. The LinkBase class is defined as the following OWL-based fragment. bowl:Class rdf:ID=qLinkBaseqN bowl:intersectionOf rdf:parseType=qCollectionqN bowl:Class rdf:about=q#Linkq/N bowl:Restriction owl:cardinality=q1qN bowl:onProperty rdf:resource=q#componentsq/N b/owl:RestrictionN bowl:RestrictionN bowl:onProperty rdf:resource=q#componentsq/N bowl:allValuesFrom rdf:resource=q#LBaseComponentBagq/N b/owl:RestrictionN b/owl:intersectionOfN b/owl:ClassN 5. Annotations of Web resource links with OWL-L OWL-L comprises three top-level ontologies, OntoLink, Link Profile and Link Model. To demonstrate the semantic description capabilities of OWL-L, an extended link of identification by courseLoad4 is created to describe the links that are relevant to each student’s course load. This example will be referenced throughout this paper. The example refers to the link profile and link model ontologies, which define classes and properties that constitute the foundation of a link description. These classes and properties are specialized by creating subclasses, role and arcRole properties specific to the extended link. 5.1. Ontology link of courseLoad In the following fragment is encoded by OWL-L. We define the courseLoad is an OntoLink that presents the cLinkPro link profile and is described by the cLinkMod link model. The olink is the namespace that represent the OntoLink ontology. 4 The extended link annotation of Pat Jones can be found at http://sparc.nfu.edu.tw/ ~hsuic/sw/OWL-L/1.0/PatCourse.owl.
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
851
Fig. 7. Mapping between extended link and Web resources.
bolink:OntoLink rdf:ID=qcourseLoadqN bolink:presents rdf:resource=q#cLinkProq/N bolink:describedBy rdf:resource=q#cLinkModq/N b/olink:OntoLinkN The example below is given to explain the components of the courseLoad. The cLinkMod link model comprises three Locators (mo7, st62 and CS101), one Local resource (GPA), two third-party arcs (member, and instructor) and one inbound arc (score). These components will be encoded by OWL-L and presented in the following sections. OntoLink: courseLoad Profile: cLinkPro (has_Link cExtLink) (role ExtendedLink) LinkModel: cLinkMod (hasProfile cLinkPro) Locator: mo7 (role Mother), st62 (role Person), CS101 (role Course) Local resource: GPA ThirdParty arc: member (from, CS101) (to, st62) (arcRole, auditor), instructor (from, CS101) (to, mo7) (arcRole, professor) Inbound arc: score (from, st62) (to, GPA) 5.2. Link profile of courseLoad The link profile ontology includes the vocabulary to describe the link profile. Its central concept, Profile class, is a subclass of LinkProfile and contains the contact information of providers, an extensible set of link characteristics and a semantic description by specifying the title, textDescription, keyword and role. It also points to the described Link. Appendix A presents the OWL-L code of the cLinkPro profile.
5.3. Link model of courseLoad In the cLinkMod link mode, the hasLink property provides a pointer to associate the link model with the cExtLink. bolink:LinkMode rdf:ID=qcLinkModqN blm:hasLink rdf:resource=q&lm;#cExtLinkq/N b/olink:LinkModeN 5.3.1. Extended link A cExtLink class is defined. This is a subClassOf ExtenededLink, and a subClassOf an anonymous class, with a components property. All values for this property must be instances of CourseInbound, CourseThirdParty, CourseLocalResource or CourseLocator classes. Significatly, OWL-L conceptualizes a specific link as a class, each of whose instances is a particular use of the link. Thus, each specific link (such as cExtLink in PatCourse.owl) is a subclass, rather than an instance of Link. CourseInbound, CourseThirdParty, CourseLocalResource, and CourseLocator are defined as subClassOf Inbound, ThirdParty, LocalResource and Locator classes, respectively. These subclasses are limited to the cExtLink components. Appendix B presents the OWL-L code of the cExtLink class. 5.3.2. Locator and local resource The following OWL-L fragment defines three instances of CourseLocator, each of which uses a href property to specify the remote resource that is participating in the link. The circle symbols in Fig. 7 denote instances of CourseLocator (such as st62, mo7, and CS101) and the dotted line point to the physical entities. Additionally, we also give each instance a role. The role property can refer to an abstract concept that is an ontology class. As shown in Fig. 8, the fy, ha, and cu are the namespaces that represent the Family, Human, and Course Ontologies, respectively. Each CourseLocator instance refers to a specific class from which it can inherit knowledge. For example, st62 is an instance of CourseLocator, with title, Pat Jones. The title is generally adopted to describe the meaning
852
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
Fig. 8. An extended link can refer to an additional semantic through the role/arcRole properties.
for human-readable form. The role refers to the Person class of the Human ontology, and the href property refers to the URL address of st62. bCourseLocator rdf:ID=qst62qN blm:titleNPat Jonesb/lm:titleN blm:role rdf:resource=q&hu;#Personq/N blm:href rdf:resource=qhttp://sparc.nfu.edu.tw/~hsuic/webpage/home/PatJones/index.htmlq/N b/CourseLocatorN bCourseLocator rdf:ID=qmo7qN blm:titleNDr. Jay Smithb/lm:titleN blm:role rdf:resource=q&fa;#Motherq/N blm:href rdf:resource=qhttp://sparc.nfu.edu.tw/~hsuic/webpage/home/JaySmith/index.htmlq/N b/CourseLocatorN bCourseLocator rdf:ID=qCS101qN blm:titleNComputer Science 101b/lm:titleN blm:role rdf:resource=q&cu;#Courseq/N blm:href rdf:resource=qhttp://sparc.nfu.edu.tw/~hsuic/webpage/home/courses/cs101.htmlq/N b/CourseLocatorN In the following OWL-L fragment defines the GPA is an instance of CourseLocalResource. bCourseLocalResource rdf:ID=qGPAqN blm:titleNgrade-point averageb/ lm:titleN blm:valueN3.5b/ lm:valueN b/CourseLocalResourceN 5.3.3. OntoArc The following OWL-L fragment defines two instances of CourseThirdParty, each of which has a pair of from and to values that represent source and destination resources respectively. The rectangle symbols in Fig. 7 denote instances of CourseThirdParty (such as member, and instructor), and the dotted lines point to the physical links. Additionally, each CourseThirdParty instance is also given an arcRole. The arcRole property can refer to an abstract concept, which is a property of the ontology class. As shown in Fig. 8, each CourseThirdParty instance refers to a specific
property from which it can inherit semantics. For example, the instructor is an instance of CourseThirdParty, which has a title “CS101 is taught by Dr. Jay Smith”. The arcRole refers to the professor property of the Course ontology. bCourseThirdParty rdf:ID=qmemberqN blm:from rdf:resource=q#CS101q/N blm:to rdf:resource=q#st62q/N blm:arcRole rdf:resource=q&course;#auditorq/N blm:titleNAll students, auditing the courseb/lm:titleN b/CourseThirdPartyN bCourseThirdParty rdf:ID=qinstructorqN blm:from rdf:resource=q#CS101q/N blm:to rdf:resource=q#mo7q/N blm:arcRole rdf:resource=q&course;#professorq/N blm:titleNCS101 teach by Dr. Jay Smithb/lm:titleN b/CourseThirdPartyN In the following OWL-L fragment, we define score is an instance of CourseInbound, which has an ending resource (i.e. GPA) is local and a remote starting resource (i.e. st62) goes inbound. bCourseInbound rdf:ID=qscoreqN blm:from rdf:resource=q#st62q/N blm:to rdf:resource=q#GPAq/N blm:titleNPat Jones's GPAb/lm:titleN b/CourseInboundN 5.4. Three different approaches to enhance the knowledge representation OWL-L supports three different approaches to enhance the knowledge representation of XLink, namely XML-based metadata, OWL-L semantic and ontology-based reasoning. The first approach, called XMLbased metadata, adopts XML-based metadata to describe Web resources. This approach is used to develop existing XLink applications, but still cannot intelligently locate relevant Web resources. The OWL-L semantic approach supports OWL-based semantic capabilities that make Web resources links computer-interpretable. The ontology-based reasoning approach provides OWL-based ontologies based on
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
3. Inference knowledge by role
Table 1 The comparison of different approaches.
Markup language Semantic Web layer Knowledge represent format Knowledge represent logic Inference capability Limitation Advantage
853
XML-based metadata
OWL-L semantic
Ontology-based reasoning
XML
OWL-L
OWL
XML layer
Ontology layer
Ontology layer
XML-based
Ontology-based
Ontology-based
Metadata
Description logics
Description logics
Syntax
Semantic
Semantic
Lack intelligence Simple and popular
Can't represent nonmonotonic rules Can enhance the knowledge representation of XLink
Build on top of OWL-L Can be integrated into OWL-L to enhance the computer reasoning
description logics to provide sound and decidable reasoning to OWL-L, and therefore enhances the semantic reasoning capabilities of OWL-L. Table 1 shows the features of these three common semantic approaches are summarized and listed in. 5.5. Adding semantic knowledge to OntoLink using Web-based ontologies The values of the role and arcRole are URI references. They identify some resources that describe the intended properties. The format of this resource is not standardized by XLink and therefore is an open field for proprietary extensions of semantics. OWL-L defines the range of the role property in owl:Thing, so that a resource can set a special ontology class by referring to an additional semantic through a role property. Similarly, the range of the arcRole property is also defined in owl:Thing. An arc is thus associated with an arcRole to retrieve additional semantics from a specific property of ontology class. These ontologies are implemented in OWL, which can seamlessly interoperate and integrate with OWL-L. Consequently, the semantic and knowledge representation capabilities of XLink are significantly improved. As in the previous example, the related information about mo7 can be obtained from the following four categories. The first category is material derived from the resource itself, supported by XML-based metadata. The second category obtains functions from the OWL-L semantic approach. The last two categories make inference to obtain additional facts provided by the OWL-based reasoning approach. 1. XML-based metadata approach The physical entity is the resource itself that is an inherent material. The mo7 is an RDF ID, and identifies the physical entity located at the following address: http://sparc.nfu.edu.tw/~hsuic/webpage/ home/JaySmith/index.html The above URL represents a HTML page that provides detail information for the mo7. Moreover, a physical entity may be an XML document containing a set of property descriptor elements. An element in this XML document is selected by the URI reference containing an XPointer fragment identifier: http://sparc.nfu.edu. tw/~hsuic/webpage/home/whub.xml #xpointer(//person [@type=’JaySmith’]) 2. OWL-L semantic approach The mo7 is an instance of CourseLocator, which is a subclass of Locator. Hence, mo7 can inherit the features and limitations from the CourseLocator and Locator classes. For example, agents can infer that mo7 is a remote resource rather than a local resource, and that mo7 must have exactly one from property value.
The role property of mo7 specifies the actor that is the Mother class of the Family ontology. Therefore, mo7 can be regarded as an instance of the Mother class, which inherits semantic relations and knowledge from the Family ontology. For example, the following fragment is a children property is declared in the Family ontology. Agents can infer that mo7 may have a son. bowl:ObjectProperty rdf:ID=qchildrenqN brdfs:domain rdf:resource=q#Motherq/N brdfs:range rdf:resource=q#Sonq/N b/owl:ObjectPropertyN 4. Inference knowledge by arcRole The mo7 is a destination resource of the instructor arc, which is associated with the professor property of Course ontology through the arcRole. The professor property is declared in the Course ontology, illustrated as the following fragment. The property of OWL can be mapped to the arc of OWL-L. Agents can infer that mo7 is an instance of the Teacher class. Additionally, the FunctionalProperty implies that each course there is at most one teacher for the professor property. Thus, agents can infer that the course CS101 is only instructed by mo7. bowl:FunctionalProperty rdf:ID=qprofessorqN brdfs:domain rdf:resource=q#Courserq/N brdfs:range rdf:resource=q#Teacherq/N b/owl:FunctionalPropertyN 6. Related work XLink, as developed by W3C, describes how Web resources are related. A link in XLink is associated with metadata that explicitly describes the relationships. The main advantage of XLink is that it offers out-of-line links that allow separation of content from the link structure. The content is contained in the XML document, while the link structure is provided by the linkbase. Many studies on XLink and linkbases have been performed recently by researchers. These include hypermedia linking [19], link transformation [20,21], link server [21,22], Web navigation [23], query language [24,25] etc. However, they do not address using ontology technologies to perform machine understanding in XLink. This study is the first to consider this issue in ontologies. A brief overview on existing XLink applications for information retrieval is given below. xlinkit [22] is a lightweight application service that provides rulebased link generations and examines the consistency of distributed Web contents. A user writes a number of rules or constraints in an XML-based rule language, while the system generates a linkbase linking elements that meet or violate the specified constraints. XLinkProxy [21] acts as an intermediary server between a browser and a Web server, by forwarding a resource request obtained from a browser to the appropriate HTTP server. XLinkProxy may add new information, such as new links, to the resource before sending it to the requesting browser. XPathLink [24] was developed as a natural extension of XPath, which allows the application to formulate queries to XLink links transparently, and to navigate XLink links in a natural way. The dbxlink scheme [25] has been proposed as an incremental extension to XLink and XPath, formed as a logical model for networks of linked documents. Based on this logical model, XPath constructs can be used to operate transparently on linked documents. Those approaches focus on XML-based metadata and syntax, but unlike ontologies, they do not provide rich semantics for knowledge representation. In contrast, OWL-L adopts a Semantic Web approach. OWL is a W3C recommendation and a major technology for the Semantic Web. OWL describes the abstract concepts of a domain in terms of. classes and properties. It is a Web-based ontology language for the Semantic Web that provides a formal semantic representation
854
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
Table 2 The comparison of OWL-L and XLink. OWL-L
XLink
Developer
This study
Development language Language category Development goal Model
Ontology Web Language (OWL)
W3C recommendation standard eXtensible Markup Language (XML) Markup language
Knowledge represent Resource discovery
Ontology language Facilitate Web resources links to computer-interpretable OntoLink, LinkProfile, LinkModel Metadata, ontology, description logics Keyword-based matching, ontologybased reasoning, OWL-L semantic
Describe the link relationships among Web resources Simple link, Extended Link, linkbase Metadata Keyword-based matching
and machine-understandable reasoning capabilities. The current version of OWL-L builds on OWL by following the layered approach to Semantic Web stack [26]. OWL-L is an OWL-based ontology language, based on XLink, which defines a set of classes and properties. The OntoLink, LinkProfile, and LinkModel classes are defined in the top level ontology of OWL-L. The OntoLink class provides an organizational point of reference for declaring Web resource links. The LinkProfile class provides the information required for an agent to discover a link, while the LinkModel class provides information that enables an agent to exploit a link. Therefore, OWL-L can describe the properties of Web resources in an unambiguous and computer-interpretable form, thus facilitating discovery, matchmaking, and composition of Web resources through their semantic descriptions. Table 2 shows significant difference comparisons between the OWL-L and XLink. 7. Summary and concluding remarks This paper discusses the limitations of existing XLink relative to the knowledge representations of concerns, and proposes OWL-L to improve these limitations. Exactly how OWL-based ontologies can be seamlessly integrated with OWL-L to enhance knowledge representations is also demonstrated. OWL-L is an upper ontology for describing Web resources links, written in OWL. Two aspects of OWL-L are presented, namely the link profile and the link model, to help software agents to locate and compose links automatically. OWL-L is a novel ontological approach to modeling the structure of XLink. It makes three main contributions. First, a new OWL-based ontology language, called OWL-L, is developed with the objective of making Web resources links computer-interpretable. OWL-L is first approach to address the limitations of XLink using ontology technologies. Second, OWL-L provides an abstract concepts framework, comprising OntoLink, LinkProfile, and LinkModel classes, to the description of Web resources links, and then to facilitate to discover or exploit a link. Third, OWL-L supports three different approaches, namely XML-based metadata, OWL-L semantic and ontology-based reasoning, to present the knowledge representation. Because the original XLink can only support the XLink-based metadata, adding the features from ontology and OWL-L semantic significantly enhances the intelligent capabilities comparing to XLink. Future work should extend Semantic Web Mining [27,28] with OWL-L that can improve the results of Web Mining by exploiting the new semantic structures in the web. Conversely, Web mining can be applied to help create the Semantic Web. For example, OWL-L applications can be built by Web Mining. Web 2.0 Mashup has been recognized as the next generation of web applications [29,30]. It requires shared meaning to enable the creation of new applications by combining or reusing different Web resources. Future work should
also study the integration of OWL-L with Web 2.0 Mashup technologies, such as Web feeds and Web API, to locate relevant Web resources intelligently. Acknowledgement The authors would like to thank the National Science Council of the Republic of China, Taiwan for financially supporting this research under Contract No. NSC 96-2218-E-150-004. Appendix A. Link profile of courseLoad blp:Profile rdf:ID=qcLinkProqN blp:has_link rdf:about=q&lm;#CourseLoadLinkq/N blp:titleNCourse Load for Pat Jones.b/lp:titleN blp:textDescriptionN An OWL-L based extended link description of Course Load for Pat Jones. b/lp:textDescriptionN blp:keywordNCourseb/lp:keywordN blp:role rdf:resource=q&olink;#ExtendedLinkq/N blp:createByN bwsp:Actor rdf:ID=qI-ChingqN bwsp:nameNI-Ching Hsub/wsp:nameN bwsp:titleN Department of Computer Science and Information Engineering b/wsp:titleN bwsp:phoneN213 271 7822 b/wsp:phoneN bwsp:faxN213 271 7821 b/wsp:faxN bwsp:emailN
[email protected] b/wsp:emailN bwsp:physicalAddressN264, Wenhua Rd., Huwei Township, Yunlin, Taiwan b/wsp:physicalAddressN bwsp:webURLN http://sparc.nfu.edu.tw/~hsuic/ b/wsp:webURLN b/wsp:ActorN b/lp:createByN b/lp:ProfileN Appendix B. Extended link bowl:Class rdf:ID=qcExtLinkqN brdfs:subClassOf rdf:resource=q&lm;#ExtenededLinkq/N brdfs:subClassOfN bowl:RestrictionN bowl:onProperty rdf:resource=q&lm;#componentsq/N bowl:allValuesFromN bowl:ClassN bowl:unionOf rdf:parseType=qCollectionqN bowl:Class rdf:about=q#CourseInboundq/N bowl:Class rdf:about=q#CourseThirdPartyq/N bowl:Class rdf:about=q#CourseLocalResourceq/N bowl:Class rdf:about=q#CourseLocatorq/N b/owl:unionOfN b/owl:ClassN b/owl:allValuesFromN b/owl:RestrictionN b/rdfs:subClassOfN b/owl:ClassN bowl:Class rdf:ID=q#CourseInboundqN brdfs:subClassOf rdf:resource=q&lm;#Inboundq/N b/owl:ClassN bowl:Class rdf:ID=q#CourseThirdPartyqN brdfs:subClassOf rdf:resource=q&lm;#ThirdPartyq/N b/owl:ClassN bowl:Class rdf:ID=q#CourseLocalResourceqN brdfs:subClassOf rdf:resource=q&lm;#LocalResourceq/N
I.-C. Hsu et al. / Computer Standards & Interfaces 31 (2009) 846–855
b/owl:ClassN bowl:Class rdf:ID=q#CourseLocatorqN brdfs:subClassOf rdf:resource=q&lm;#Locatorq/N brdfs:subClassOfN bowl:Restriction owl:Cardinality=q1qN bowl:onProperty rdf:resource=q#formq/N b/owl:RestrictionN b/rdfs:subClassOfN b/owl:ClassN References [1] S. DeRose, E. Maler, D. Orchard, XML Linking Language (XLink) Version 1.0, 2001 available at: http://www.w3.org/TR/xlink/ [accessed 10 July 2008]. [2] R.D. Jr., Harvesting RDF Statements from XLinks Version 1.0, 2000 available at: http://www.w3.org/TR/xlink2rdf/ [accessed 10 July 2008]. [3] T. Berners-Lee, J. Hendler, O. Lassila, The Semantic Web — a new form of Web content that is meaningful to computers will unleash a revolution of new possibilities, Scientific American 284 (5) (2001) 34–43. [4] N. Shadbolt, T. Berners-Lee, W. Hall, The Semantic Web revisited, IEEE Intelligent Systems 21 (3) (2006) 96–101. [5] D. Brickley, R.V. Guha, RDF Vocabulary Description Language 1.0: RDF Schema, 2004 available at: http://www.w3.org/TR/rdf-schema [accessed 10 July 2008]. [6] I. Horrocks, P.F. Patel-Schneider, F.V. Harmelen, Reviewing the design of DAML +OIL: an ontology language for the Semantic Web, Proceedings of the Eighteenth National Conference on Artificial Intelligence and Fourteenth Conference on Innovative Applications of Artificial Intelligence, AAAI Press, Edmonton, Alberta, Canada, 2002, pp. 792–797. [7] M.K. Smith, C. Welty, D.L. McGuinness, OWL Web Ontology Language Guide, 2004 available at: http://www.w3.org/TR/owl-guide/ [accessed 10 July 2008]. [8] I.C. Hsu, S.J. Kao, An OWL-based extensible transcoding system for mobile multidevices, Journal of Information Science 31 (3) (2005) 178–195. [9] P.F. Patel-Schneider, P. Hayes, I. Horrocks, OWL Web Ontology Language Semantics and Abstract Syntax, 2004 available at: http://www.w3.org/TR/owl-semantics/ [accessed 10 July 2008]. [10] H. Alani, S. Kim, D.E. Millard, et al., Automatic ontology-based knowledge extraction from Web documents, IEEE Intelligent Systems 18 (1) (2003) 14–21. [11] S.S. Hung, D.S. Liu, A user-oriented ontology-based approach for network intrusion detection, Computer Standards & Interfaces 30 (1–2) (2008) 78–88. [12] L. Khan, Standards for image annotation using Semantic Web, Computer Standards & Interfaces 29 (2) (2007) 196–204. [13] P. Bellavista, A. Corradi, R. Montanari, et al., Context-aware middleware for resource management in the wireless Internet, IEEE Transactions on Software Engineering (TSE) 29 (12) (2003) 1086–1099. [14] D. Lowe, E. Wilde, Improving Web Linking Using XLink, 2001 available at: http:// www.binarything.com/binarything/openpublish/DavidLowe1.pdf [accessed 10 July 2008]. [15] I. Horrocks, P.F. Patel-Schneider, Three Theses of Representation in the Semantic Web. Proceedings of the Twelfth International World Wide Web Conference, WWW2003, ACM, Budapest, Hungary, 2003, pp. 39–47. [16] M.H. Burstein, J.R. Hobbs, O. Lassila, et al., in: I. Horrocks, J.A. Hendler (Eds.), DAML-S: Web Service Description for the Semantic Web. The Semantic WebISWC 2002, First International Semantic Web Conference, Springer, Sardinia, Italy, 2002, pp. 348–363. [17] D. Martin, M. Burstein, J. Hobbs, et al., OWL-S: Semantic Markup for Web Services, 2004 available at: http://www.w3.org/Submission/2004/SUBM-OWL-S20041122/ [accessed 10 July 2008]. [18] P. Grosso, E. Maler, J. Marsh, et al., XPointer Framework, 2003 available at: http:// www.w3.org/TR/2003/REC-xptr-framework-20030325/ [accessed 10 July 2008]. [19] D.C. Muchaluat-Saade, R.F. Rodrigues, L.F.G. Soares, XConnector: Extending XLink to Provide Multimedia Synchronization, in Proceedings of the 2002 ACM Symposium on Document Engineering, ACM, McLean, Virginia, USA, 2002, pp. 49–56. [20] B.G. Christensen, F.A. Hansen, N.O. Bouvin, Xspect: Bridging Open Hypermedia and XLink, in Proceedings of the Twelfth International World Wide Web Conference, WWW2003, ACM, Budapest, Hungary, 2003, pp. 490–499. [21] P. Ciancarini, et al., XLinkProxy: External Linkbases with XLink, in Proceedings of the 2002 ACM Symposium on Document Engineering. ACM, McLean, Virginia, USA, 2002, pp. 57–65.
855
[22] C. Nentwich, L. Capra, W. Emmerich, xlinkit: a consistency checking and smart link generation service, ACM Trans. Internet Techn 2 (2) (2002) 151–185. [23] S.J. Kao, I.-C. Hsu, Semantic Web approach to smart link generation for Web navigations, Software: Practice and Experience 37 (8) (2007) 857–879. [24] D.A. Lizorkin, The query language to XML documents connected by XLink links, Programming and Computer Software 31 (3) (2005) 133–148. [25] W. May, E. Behrends, O. Fritzen, Integrating and querying distributed XML data via XLink, Information Systems 33 (6) (2008) 508–566. [26] T. Berners-Lee, Web for Real People, 2005 Available at http://www.w3.org/2005/ Talks/0511-keynote-tbl/ [accessed 10 July 2008]. [27] G. Stumme, A. Hotho, B. Berendt, Semantic Web mining: state of the art and future directions, Journal of Web Semantics 4 (2) (2006) 124–143. [28] B. Berendt, A. Hotho, D. Mladenic, et al., A roadmap for Web mining: from Web to Semantic Web, in: B. Berendt, et al., (Eds.), Web Mining: From Web to Semantic Web, First European Web Mining Forum, EMWF 2003, Springer, Cavtat-Dubrovnik, Croatia, 2003, pp. 1–22. [29] M. Greaves, Semantic Web 2.0, IEEE Intelligent Systems 11 (2) (2007) 94–96. [30] S. urugesan, Understanding Web 2.0, IEEE IT Professional 9 (4) (2007) 34–41.
I-Ching Hsu (
[email protected]) received a Ph.D. degree in the computer science department at the National ChungHsing University of Taiwan in 2007. Dr. Hsu has been working at Chung-Shan Institute of Science & Technology in the area of intelligent data integration and modeling technologies since 1991. He is currently an assistant professor of Computer Science and Information Engineering at National Formosa University, Taiwan. He has participated and directed projects in the area of Semantic Web, XML, UML and Internet applications development. His current research aims at the creation and study of Semantic Web for Web 2.0, Sensor Web and information modeling applications.
Yuan Kwei Tzeng (
[email protected]) is a Ph.D. student working with associate Professor Der-Cheng Huang in the Department of Computer Science and Engineering at the National Chung-Hsing University of Taiwan. Mr. Tzeng received a B.S. degree and a M.S. degree from the department of Applied Mathematics, at National Tsing-Hua University in 1983 and 1985 respectively. Mr. Tzeng has been working at Chung-Shan Institute of Science & Technology in the area of intelligent data integration technologies since 1985. His current research aims at the creation and study of Semantic Web for modeling and simulation network security mining applications and information modeling.
Der-Cheng Huang (
[email protected]) is an associate professor with the Department of Computer Science and Engineering, National Chung-Hsing University of Taiwan. His research interests are in VLSI design, test and diagnosis SoC and Embedded system design, test and diagnosis Computer-aided design and verification of VLSI VLSI Digital Signal Processing Microprocessor system design and information modeling.