Distributed Reasoning for Context-Aware Services through Design of ...

2 downloads 64 Views 723KB Size Report
I. INTRODUCTION. The Semantic Web and its technologies are evolving rapidly. New technologies and principles enabling Semantic Aware services to be ...
Fourth International Conference on Autonomic and Autonomous Systems

Distributed reasoning for context-aware services through design of an OWL meta-model S. Verstichel, M. Strobbe, P. Simoens, F. De Turck, B. Dhoedt, P. Demeester Department of Information Technology, Ghent University, Ghent, Belgium G. Crommenlaan 8/201, 9050 Ghent, Belgium tel.: +32 9 331 4981 fax: +32 9 331 4899 Email: [email protected] Abstract—A growing number of applications start using Semantic Web technologies. The base concept in this technology is the use of ontologies, allowing first-order logic reasoning engines to execute a number of semantic tasks, such as the validation and consistence checking of the underlying ontology. Because applications work in a distributed environment, e.g. the retrieval of sensor values, resulting in ever increasing amounts of data, there is a clear need for this reasoning process to be distributed. Additional concepts to enable this distributed reasoning are therefore needed. In this paper, we present a meta-model based on the same Semantic Technology. To facilitate distributed reasoning, an architecture supporting this meta-model has been developed as well. The paper will show that the proposed solution offers significant improvement in terms of the reasoning process response times.

can be distributed together or separate from one another. An additional concern consists of the measures taken with regard to the robustness of the distributed application, possibly by duplicating models and datasets on multiple locations in the network. In order to support these different types of distribution, we propose in this paper an OWL-based meta-model. This metamodel makes use of standard OWL constructs to overcome the difficulties of extending the modeling language itself with new language constructs and features, which in turn would result in the need to adapt the reasoners to handle these new constructs. Not only the meta-model in itself will be detailed, but also the supporting architecture and implementation details will be described. The remainder of this paper is structured as follows. The conceptual approach of our proposed solution, is introduced in Section II while Section III describes the developed metamodel in more detail. Section IV introduces related work on distributed reasoning. Section V consequently details the demonstration use case, together with the implementation details. The evaluation is presented in Section VI. The last section of this paper, presents our conclusions and introduces tracks for future research.

I. I NTRODUCTION The Semantic Web and its technologies are evolving rapidly. New technologies and principles enabling Semantic Aware services to be developed and deployed are emerging constantly. Also the amount of different application domains in which these principles are used continues to increase. One of these fields where Semantic Technologies are used, is the provisioning of Context-Aware Services. An example of such a Context-Aware service is the office location service which is adopted as a use at the end of this paper. An ontology describes in a formal manner the concepts and relationships, existing in a particular system and using a machine-processable common vocabulary within a computerised system. One of the languages used to describe such an ontology is the Ontology Web Language, OWL [1]. It is easy to understand that with an ever-growing number of applications using these Semantic Technologies, the size of the datasets used by these applications is growing even faster. Therefore the need arises to find methods and mechanisms to use these Semantic Technologies, such as OWL-ontologies and first-order logic reasoners, in a distributed environment, where services come and go, and where data and models are distributed among several interconnected computing nodes for scalability and/or performance reasons. Several options exist to distribute reasoning components over different nodes. First of all generic reasoner nodes, without a pre-loaded knowledge base could be distributed over the network. A second option is to distribute the models, as well as the data conforming to these models. The model and the data

0-7695-3093-1/08 $25.00 © 2008 IEEE DOI 10.1109/ICAS.2008.17

II. C ONCEPT D ESCRIPTION In this Section, we present a conceptual overview of the principles behind the construction of the meta-model. Also reasoning possibilities on this meta-model are described. The aim of the meta-model presented in this paper is to facilitate distributed reasoning, in particular focused on pure OWL-DL ontology. As will be presented in Section IV, other techniques with an extended flavour of OWL-DL have already been studied. However, not all available OWL-DL Reasoners support these extended versions. Therefore, we have opted to search for a pure OWL-DL solution. In this way we keep the possibility for the end-system to use any OWL-DL reasoner that suits the needs of the application. In contrast to approaches where the language constructs and features that facilitate distributed reasoning are embedded inside the modeling language itself, our approach needs a separate model defining the distributed aspects. This model functions as meta-model, giving the application and indeed also the reasoner on this level, the meta-reasoner, the necessary

70

hasSpecification

extra information about the models and services to make distributed reasoning possible. Because this meta-model is constructed in pure OWL-DL, we have created the ability to reason over the meta-model as well. Another important feature thus created, is that other services, not explicitly based on OWL models, but with a strictly defined interface and functionality, can be modeled as well. The meta-model is constructed on top of the individual ontology models and services. We envisage to only having a single meta-model with information about the OWL ontology and services. However, redundancy and robustness techniques could be used to efficiently distribute the meta-model as well. One of the main characteristics that need to be modeled in the meta-model to support context-aware services, is the location of the services and models. After all, contextaware services gather information about a variety of context providers. These providers expose context information from a number of different locations. Also, the users in the contextaware application change over time. As users provide context to the application as well, the location of these providers changes accordingly. We start from the assumption that every service and actor in the ontology-based context-aware application has its own ontology model. This is a needed precondition in order to enable automatic formal reasoning with these services and actorprofiles. Without such a formal description, the information supplied by these services cannot be taken into account in the reasoning process. In order for the distributed reasoner to find out where and what information is available, application or service specific information needs to be maintained and registered. The meta-model is the ideal location to do this. In case a new subservice wants to take part in the collaborating context-aware service, it would need to register itself in the meta-model. This registration would of course not only involve the address on which it can be contacted, but also important information about the concepts that can be found in its model. This could be on the one hand the important ontology concepts that exist in the model. On the other hand, it could also consist out of the webservice functionality or interface that the new subservice offers. A third possibility is for the newly arrived service also to register in the meta-model dependencies with other services or datasets. Taken all these possibilities into account, it becomes clear that the meta-model contains lots of information about the collaborating services in the context-aware application. Therefore, the meta-model can also be described as a kind of directory service, but with the added value that an OWL-DL reasoner can be attached. A major issue with a meta-model in which new information can be entered at-runtime, is the consistency of this model. If a new service enters the context-aware application and sends out meta-information about itself to be incorporated into the meta-model, and this information is inconsistent with the information already provided by the other services, then these kind of problems can be detected by the reasoner. Another task of this meta-model together with the reasoner

User depends

Specification

specificationOf ifi ti Of hasInterface interfaceOf

Service

uses usedBy

Interface

hasOntology locatedIn

locatedIn

Ontology has

subAction QueryAction

supports

actionToBeTaken

has

Relationship p Class

Action subAction

queryToBeExecuted

Fig. 1. service

Query

subQuery

Concepts and relationships used to construct a meta-model of a

attached to it, is the splitting up of an incoming request for information into separate smaller subrequests. These subrequests could then be sent on to the individual subservices, which will formulate an answer to this subquery. Afterwards, these subresultsets would need to be merged into a single answer to the original requestor. III. M ETA - MODEL DESCRIPTION This section presents a detailed description of the concepts and relationships in the meta-model. The meta-reasoning processes are detailed as well. Figure 1 illustrates the concepts used in the meta-model. These concepts can be divided into two groups. A first group, in Figure 1 situated below the line, is composed of concepts and relationships describing the contents of the OWL model it represents. The second group, in the upper half of Figure 1 consists of concepts used to model information concerning the types of requests it can process. Also in this group are concepts and relationships describing the availability of the service or model, processing time, workload etc.. The following paragraphs present these concepts in more detail as well as examples of how meta-model reasoning can help improving the performance of the distributed Semantic Application., in our case a Context-Aware distributed service. The details of this use case are discussed in Section V. A. Concepts to model the contents of the model This first group of concepts is the most important group when discussing distributed reasoning on OWL models, or the processing of semantic queries. The top-level engine has to be aware of the location of the different concepts, their individuals and relationships with other concepts in other submodels, which can of course reside in different locations. The baseline idea behind this meta-model is that every ontology OWL-model is contained in a service responsible for it. This service can expose the entire OWL-model, or only a subset of it to the outside world. Also, a reasoning engine will be incorporated in this service to process incoming query tasks. In the other case where a reasoning engine is not available at the location of the OWL-model, this would result in a need for the model to be transferred from its original location to another node that does have reasoning capabilities.

71

The first obvious concept in the meta-model is the “Ontology” concept. A “Service” concept is created as well to represent the service endpoint responsible for this “Ontology”. The details of this “Service” concept are presented in the next paragraph, together with the other service-related concepts. A number of DatatypeProperties are attached to the “Ontology” concept. These are the version of the ontology, an id and its name. The namespace and the access point identifier are also modeled. Of course, an ontology can import other ontology individuals. This can be expressed using the importobjectrelationship from the meta-model. Instances of “Ontology” concepts have relationships with instances of “Class” and “Relationship” concepts, representing the classes and relationships available in the model they describe. Each of these concepts also has a name, id and namespace DatatypeProperty attached. Dependencies between individuals of both the “Class” and “Relationship” concepts can be expressed using the equivalentOf, subOf and superOf. Another important concept in this first group is the “QueryAction”. An individual of the “QueryAction” concept has possible relationships with other “QueryAction” individuals, in order to express dependencies between queries. A reference to the “Service” concept can also be included. This relationship can be used to retrieve the endpoint able to satisfy this “QueryAction”. Apart from the actual query syntax to be executed, the “Query” individual also contains information regarding the performance of previous executions of the query, such as the average response time. Together with the “Action” linked to it through the “QueryAction” individual, it describes the actions to be taken on the results of the query. The actions currently modeled are “Merge”, “Complement” and “Subtract”, representing the situation where the resultsets have to be merged, the complement to be taken, or to be subtracted from another resultset participating in the overall global query processing.

Other aspects that can be modeled using the relationships from this group are the response performance metrics measured for a certain request. This could be the time it takes for a request to be fulfilled in case of a webservice being described, but it could also be the number of results returned by a query sent to the local reasoning engine of an OWLDL model. Depending on this information, the meta-model reasoner can decide which “Service” endpoint is most likely to be suited to satisfy a certain incoming request. C. Meta-model reasoning principles The main goal of this meta-model reasoning is to improve the overall performance of the distributed reasoning application. This can be achieved in a number of ways. Also, because we have chosen to construct this meta-model as generically as possible in order not to exclude non OWL-DL based services, the meta-model reasoning can also make use of other technologies to satisfy certain incoming requests. A first case is when a query has to be decomposed and satisfied by a number of services in order to formulate an overall answer back to the requestor. In order to do this, the meta-reasoner will consult the meta-model in order to find out if such a query has previously been processed. In such a situation, it will find the “Query” concepts and the “Services” that can provide the answers to this query, together with the extra information concerning response times, etc. Taking all this information into account, the meta-reasoner contacts these underlying subreasoners, retrieves the necessary information from them, composes the results back together and ultimately provides an answer to the requestor. During this entire process, the global service updates the information in the meta-model with the new information, such as the new response times, memory usage, etc. In the other case when the incoming request has not yet been processed previously, the meta-reasoner has to find the “Ontology” individuals, containing the “Classes” and “Relationships” used in the query. In this way, the meta-reasoner discovers the “Services” that need to be contacted in order to successfully process the incoming request. Currently, the incoming query is forwarded to all “Services” determined by the meta-reasoner. The results are merged in a single answer. Another approach is when the “Ontology” concepts contained in the “Services” are transferred to a single location, merged together and the reasoner in this location executes the query. This distributed approach is illustrated in Figure 2.

B. Concepts to model services and usages The concepts contained in this subset represent extra runtime information about the services and the models. Some of the properties represented are the workload and usage of the services. But also other specifications can be described using the concepts in this subset. Therefore we have created a general concept “Specification”, containing a number of properties such as the operating system used, the hostname of the “Service”, the ip address, etc. An individual of this “Specification” concept is linked to a certain individual of a “Service” concept. The “Service” concept represents a reasoning node in the distributed system. It serves as an aggregation concept for connecting the specifications, together with the interface of the service through individuals of the “Interface” concept, to the ontology and the users of the service. The individuals of the “Interface” concept can be attached to DatatypeProperties for describing the methods and procedures, input and output parameters supported.

IV. R ELATED W ORK Although originally intended for the Semantic Web, ontologies find their applications in a variety of areas. Examples of other domains where ontologies have been proved useful are the creation of Location-Based Services or making applications context-aware. The use of ontologies to create ContextAware applications is described in [2] and [3]. Using one of the three sublanguage flavours of OWL, OWLLite, OWL-DL and OWL-Full, one can easily adapt to the

72

Meta Info5

Meta Info3

Device 859 officelocationservice-4-0.owl 1 15 1 Debian Sarge 99 5 3000 15698 267 1024 chaos8.test Linux 10.10.9.8 1 0.6 15 http://chaos8.test/ officelocationservice-4-0.ow http://www.owl-ontologies.com/ officelocationservice-4-0.owl http://www.owl-ontologies.com/ officelocationservice-4-0.owl 756 66 select ?x ?y ?z where {?x ?y ?z}

Meta Info4 Meta Info1

Meta Info2

Model4 Model1

Service2

Model3

Fig. 2.

Meta-Reasoning architecture

required expressiveness at hand. Arguably the most interesting sublanguage for many application domains is OWL-DL, balancing great expressiveness with inferential efficiency. The efficiency is guaranteed by the underlying Description Logics [4]. Due to its foundation in Description Logics, OWL-DL is also very flexible and computationally complete. Ontologies are considered as dynamic and evolving in time. As ontologies are also tailored towards the distributed nature of the Web, OWL additionally provides constructs for (de)composition, extension, adaptation, sharing and reuse. The import statement is the ideal OWL construct to illustrate this. Technologies enabling distributed OWL-DL reasoning have already been studied in [5]. The author describes an architecture and theorems for distributed reasoning based on an extension of OWL-DL with Semantic bridge-rules. These bridge-rules are supported by DDL [7], Distributed Description Logics, and provide the user with the capability to specify mappings between concepts of distinct, independently distributed ontology models, such as “is-a-superclass-of”, “isa-subclass-of” and “is-equivalent-to”. Another possibility for creating a similar kind of mappings is by making use of ε-Connections [8]. These extensions were supported by the Pellet [9] reasoner, but support has since been dropped in the newest versions. The aforementioned approaches all require an extension to the OWL-DL standard to facilitate the expression of relationships between individual ontological models. However, as these technologies can be used to implement the ideas of meta-modeling introduced in the previous Section, our suggested approach is tailored towards the use of pure OWL-DL constructs without extensions. Another advantage is the ability to express relationships between ontology-models, ontologyaware services and ontology-unaware services, but the latter with a clearly defined interface and functionality. Earlier research into distributed reasoning, using an ontology-driven middleware has already been conducted by the authors [10]. This study focused on integrating ontology concepts and reasoning inside the CORBA-based communication middleware developed for trains in general and Passenger Information Systems in particular [11].

Fig. 3.

Example use case meta-model

principles presented in Sections II and III. As a demonstration use case, we have used the model developed for the office location service, described in [12]. This model has been instantiated with generated individuals, thus creating a populated and simulated office environment. From this model we have created the corresponding instantiated meta-model. An fragment of this meta-model can be seen in Figure 3. This service ontology itself models a Person with a lot of properties containing mostly static information relevant to his job, such as the Departement he belongs to, his email address or his function. A Person also has one or more Personal Devices. Examples are a laptop, a PDA or a mobile phone. These devices can be tracked and thus give an indication of the location of a Person. As a Person can have more than one Personal Device, he can have several locations. The determination of his most probable location is done by rules. Presence information is

V. U SE CASE In this Section, an example use case is discussed, together with the actual implementation details of the meta-reasoning

73

7000 6000

SPARQL

5000 ms

JOSEKI

4000 3000 2000

JENA

PELLET

1000 0

MySQL ProviderA

ProviderB

ProviderC

Loading

ProviderD

Validation

Consistency

Classification

Fig. 5. Loading, Validation, Consistency Checking and Classification metrics

Fig. 4. Technology stack used to implement the meta-model distributed reasoning prototype

subdivided, using two different partitioning methods. The first method, Alg1, partitions the model in two sets, each containing the same number of concepts. Or course the inviduals of these concepts are distributed together with the concepts. The second method, Alg2, looks at the defined concepts, and partitions the model in distinct sets of these defined concepts together with their defining axioms. The outcome of this algorithm is that seven sets are created. Overall the non-partitioned populated model contains 4849 individuals, together instantiating 14 concepts and creating 14794 DatatypeProperties and 9426 ObjectProperties. All measurements were done on Linux Debian machines, running a 2.6.17.14 kernel. These machine each have 512 MB of RAM available and a AMD Athlon(tm) 64 Processor 3000+ processor. The metrics measured are the time needed for Loading the model into the reasoner, the Validation of the ontology, Consistency checking, Classification and Realisation. The results for the metrics loading, validation, consistency checking and classification for both algorithms (Alg1 and Alg2) can be found in Figure 5. In these graphs the two partitioning methods are compared to one another, and to the metrics measured in case the model was not partitioned. An important outcome from these measurements is that the bottleneck in the complete reasoning process is found in the realisation of the model, i.e. looking at the individuals and comparing them to the first-order logic statements of the defined concepts. Because our model contains 4849 individuals, the time needed for this realisation process is a magnitude higher than the times taken for the other metrics. Therefore the last metric, the realisation has been plotted separately in Figure 6. An important conclusion that can be drawn from these measurements is that the reasoning process is completed faster in the distributed case, which enables the services around these partitioned models to be ready to process queries much quicker. The first results will be delivered quicker than in the non-distributed case, however as has been confirmed by the measurements the time needed to retrieve all results might take longer if a lossy partitioning algorithm is used. This last characteristic has been taken into account as well in the specification for an OWL-QL [16] query language which is a dialogue-based query language, where partial initial results are returned as soon as they are available from the query-engine,

modeled by means of the status property of a Person. Apart from persons, the office building, the current time and office devices such as printers or projectors are modeled, in order to be located and used by the Context-Aware service. A single reasoning node contains the data, wrapped into a Jena [13] triple store. A triple store was chosen to improve the performance of the data and model processing. A number of back-end storage mechanisms can be used by Jena. As backend storage for the use case, a MySQL relational database was preferred, because of the potentially large amount of data. In an on-line environment, the instantiated data would not be generated, but coming from context providers. These are situated at the bottom of the architecture. Attached to the Jena model, we connected a Pellet [9] reasoner. As Jena and Pellet both have a Java API available for manipulating the ontology, they can easily be integrated. On top of this Jena library, a Joseki [14] webservice and SPARQL [15] query engine has been deployed. SPARQL is the W3C candidate recommended query language for Semantic Web queries. The complete technology stack is presented in Figure 4. Because the office location service model is only a single model, a partitioning of this model was needed in order to use this model in a distributed environment. To examine the improvement by distributing the reasoning, a second adaptation to the model was the inclusion of so-called defined concepts. As the name already suggests, these concepts are defined through first-order logic statements, using the rules for determining the probable location of the person already existing in the model. The reasoning process, through its classification and realisation mechanisms, will then search and find instances satisfying these first-order logic statements, and therefore denoting these instances as also being individuals of to the defined concept. This approach was taken, particularly because we wanted to investigate what the performance improvements would be by distributing this classification and realisation task. The results will be detailed in Section VI. VI. E VALUATION DETAILS As indicated in Section V a generated instantiation of the office location model was used, in order to validate the mechanisms developed to enable the OWL-based metamodel distributed reasoning. This model was consequently

74

3000000

realise the submodels. As can be expected, these results show that the overall performance can be significantly improved, when correct and efficient partitioning algorithms are used. Further research has to be done in this area in order to develop valid partitioning mechanisms not only for models, but also for the queries. The validity of the partitioning is very important to avoid the occurrence of reasoning conflicts. One of the main issues to be taken into account when designing these partitioning algorithms, is preservation of all implicit knowledge.

2500000

ms

2000000 1500000 1000000 500000 0

Realisation

Fig. 6.

Realisation metric

ACKNOWLEDGMENT Stijn Verstichel would like to thank the IWT (Institute for the Promotion of Innovation through Science and Technology in Flanders) for financial support through his Ph.D. grant. Matthias Strobbe would like to thank the Fund for Scientific Research (FWO-V) for the support through his Ph.D. grant. Filip De Turck would also like to thank the Fund for Scientific Research (FWO-V) for the support through his post-doctoral grant.

and the client can optionally ask for more results from the query-engine if needed. However, as can be seen from Figure 5, the sum of the times needed for processing the two models does not equal the time needed for the same processing on the non-partitioned model. This can be explained because crosssubmodel links are maintained, resulting in concepts replicated in two locations. A last conclusion based on these measurements is that the time taken by the realisation process is greatly influenced, by the amount of defined concepts. This can be noticed in the difference between the measured times for Alg2, Set6 and Alg2, Set7. The former having a few defined concepts, while the latter does not have any defined concepts at all. Also the amount of individuals influences the time needed for realizing the model. This can be explained because the individuals need to be matched against every defined concept. The number of such defined concepts influences the algorithm the most. In Alg1 Set2 with 7 defined concepts and 218 individuals we have measured an average realisation time of 15095ms with a standard deviation of 71.91ms, while in Alg1 Set3 the average time needed was 35164ms with a standard deviation of 263.68ms. This behaviour will have to be taken into account when developing efficient partitioning algorithms.

R EFERENCES [1] McGuinness D.L., van Harmelen F., OWL Web Ontology Language overview, W3C Recommendation, 10 February 2004. [2] Gu T., Pung H. K., Zhang D. Q.: Towards an OSGi-Based Infrastructure for Context-Aware Applications in Smart Homes., IEEE Pervasive Computing, 3(4), 2004. [3] Preuveneers D., Van den Bergh J., Wagelaar D., Georges A., Rigole P., Clerckx T., Berbers Y., Coninx K., Jonckers V., De Bosschere K.: Towards an Extensible Context Ontology for Ambient Intelligence., EUSAI 2004: 148-159. [4] Donini F.M., Lenzerini M., Nardi D., Schaerf A.: Reasoning in description logics, Principles of Knowledge Representation, 1996. [5] Tamilin A.: Distributed Ontological Reasoning: Theory, Algorithms, and Applications. PhD Thesis, University of Trento, Italy, February, 2007. [6] RDF/XML: RDF/XML Syntax Specification, W3C Recommendation, February 2004. [7] Borgida A., Serafini L.: Distributed description logics., Proceedings of the 2002 International Workshop on Description Logics, 2002. [8] Grau B.C., Parsia B., Sirin E.: Combining owl ontologies using εconnections, Journal of Web Semantics, 2005. [9] Parsia B., Sirin E.: Pellet: An OWL DL Reasoner, Proceedings of the International Workshop on Description Logics, 2004. http://pellet.owldl.com/. [10] Verstichel S., Van Hoecke S., Strobbe M., Vanden Berghe S., De Turck F., Dhoedt B., Demeester P., Vermeulen F.: Ontology-driven middleware for next-generation train backbones., Science Of Computers Programming 66: (1) 4-24 APR 15 2007. [11] Verstichel S., Baart A., Lievens G., Latre S., De Turck F., Vermeulen F.: Train Management Platform for advanced maintenance of Passenger Information Systems, Telecommunications, 2007. ITST ’07. 7th International Conference on ITS 6-8 June 2007 Page(s):1 - 6. [12] Strobbe M., Hollez J., De Jans G., Van Laere O., Nelis J., De Turck F., Dhoedt B., Demeester P., Janssens N., Pollet T.: Design of CASP: an open enabling platform for context aware office and city services., MUCS2007, the 4th International Workshop on Managing Ubiquitous Communications and Services, 2007, Page(s):123-142. [13] Carroll J.J., Dickinson I., Dollin C., Reynolds D., Seaborne A., Wilkinson K.: Jena: implementing the semantic web recommendations., Proceedings of the 13th international World Wide Web conference on Alternate track papers and posters, 2004, Page(s): 74 - 83. [14] Joseki: A SPARQL Server for Jena, http://www.joseki.org/. [15] Sparql: Query Language for RDF, W3C Candidate Recommendation 2007, http://www.w3.org/TR/rdf-sparql-query/. [16] Fikes R., Hayes P., Horrocks I.: OWL-QL: A language for deductive query answering on the semantic web, Web Semantics: Science, Services and Agents on the World Wide Web, Volume 2, Issue 1, 1 December 2004, Pages 19-29.

VII. C ONCLUSIONS AND F UTURE W ORK In this paper an OWL-based meta-model supporting the distributed reasoning mechanisms has been introduced. In addition to presenting a meta-model needed to enable distributed reasoning, also a supporting software architecture was detailed. Not only the ever increasing amount of data to be reasoned over leads to the need for distribution of these reasoning processes, also the diversity of the models and data has a significant part in the drive for distribution. Although the presented OWL-based meta-model has been constructed with the initial goal that it would be used to describe the locations, contents and capabilities of OWL-DL ontology, it has been developed in such a way that also other services and technologies can be modeled as well. This is particularly important if new techniques are developed in future developments of Semantic Web technologies. Results as presented in Section VI show that using a wellchosen partitioning algorithm leads to an improvement in performance in terms of the time needed to validate, classify and

75

Suggest Documents