14.5 Outlook 315 Annotation Tools Currently, the semantic

316 The Semantic Web The Network of Meanings in the Network of Documents will become part of a future knowledge universe, because machines link the content to related contents in calculable connections. When this will be possible is speculative in that it requires the understanding of languages, and additionally the ability (of machines!) to imagine (rather, calculate) possible worlds. AI research set itself these goals about fifty years ago, and has not achieved them to this day. At the same time, however, AI has made important contributions to IT as we know it today. Databases and search engines use many of the principles formulated by AI researchers during recent decades. So, a renaissance of the great challenges could give important impulses for future technologies, though the most ambitious goals will probably be hard to reach during the next fifty years, too. However, we also have to bear in mind that the enormous computer powers of current systems enable solutions to move into the feasible range. Though these solutions do not try to imitate human thinking, they can achieve very remarkable performances in other ways (often by brute-force evaluation).

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services

14.5 Outlook 315 Annotation Tools Currently, the semantic

14.5 Outlook 315 Annotation Tools Currently, the semantic markup of Web pages is still a bottleneck hindering the proliferation of the Semantic Web. It should basically be possible to automate the semantic markup. This is well conceivable for new Web applications, for instance, by using a content management system based on an ontology. In this case, the contents would be semantically marked up by indexing them according to that ontology. This can be done as early as during the contents preparation. Things get more difficult if very complex statements have to be represented, such as statements for operating instructions or scientific discussions. In these cases, we will have to fall back on manual annotation, and the annotator will have to stick to guidelines specifying how the underlying ontology should be used. Examples of such tools include the Annotea project (http://www.w3.org/2001/Annotea/). In its current version, Annotea provides mechanisms for general annotations based on a pre-defined RDF schema. In addition, there are electronic tools for scientific group work (Kirschner et al. 2003), and a general multimedia annotation tool specialized for culture and arts (http://www.cultos.org). There has also been a large body of work on annotating scholarly discourse (http://kmi.open.ac.uk/projects/scholonto/scholontoarchive.html). 14.5 Outlook With the integration of knowledge representation, the Web hits the limits of its original design philosophy. As we all know, the original idea was to structurally map knowledge connections between documents with related contents or document sections to overcome physical boundaries (article A refers to an experiment described in B, and the data for B can be read in the log or minutes of C, and each of these documents resides in a different directory and possibly even on a different server). Consequently, the original philosophy was to transform existing knowledge into a reachable structure. Hypertext navigation was then primarily intended to substitute search processes. The new form of the Web, however, promises new qualities: by explicitly describing the relationship of articles, experiments, and experiment logs, we can check and recombine statements (in articles), arrangements (in experiments), and results (in protocols). This opens up new avenues, for instance in medical research, because stronger structuring of information facilitates new evaluation methods (e.g., clinical meta-studies). The philosophy of the Semantic Web is based on converting the contents of nodes contained in this reachable structure so that a node can be interpreted by machines. This is the point where the conceptual difference to the traditional Web comes to light. In the traditional Web, the function of any hyperlink connection was of type GO TO , e.g. GO TO and GO TO . The typing of the Web pages (e.g. experiment or results-log ) was interpretable by humans only. In the Semantic Web, the article becomes a self-describing entity ( I m a scientific article based on experiment B and the associated log C ). The consequences are fundamental: first, if the referenced entities B and C have unique names, it doesn t matter where the documents are actually stored as long as they are somewhere where they can be found (by machines). The effect is that the explicit linking of information becomes secondary, while the effectiveness of the calculable links (based on self-describing entities) becomes primary. Second, if self-description (gradually) improves, it will eventually be unnecessary, because it will be deducible from the content itself. Once arrived at this point, each new piece of content

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services

312 The Semantic Web The Network of

314 The Semantic Web The Network of Meanings in the Network of Documents Creation of an application-specific ontology (if required). Manual and/or automatic annotation of the information space that should be covered by the Web application under development. Since the elements of Semantic Web applications are more closely related to the building of knowledge-based systems than to the building of hypertext systems, one has to expect a significant shift in required development expertise once Semantic Web applications become more widespread. On the other hand, if the Semantic Web proves a success, then there will be an increasing number of vendors who will offer innovative, easy-to-use development tools. 14.4 Tools Environments designed to build agents and editors to support the creation of ontologies and tools for semantic markup of Web pages are of prime interest for the development of Semantic Web applications. However, we should be aware of the fact that most tools currently available are research prototypes, since there are no mature technologies yet. Agent Frameworks One of the most time-consuming development processes is the construction of agent systems. For FIPA-compatible agent systems alone, there are currently well over a dozen development tools, which are surely worth being tested before trying to design a new agent system from the scratch. JADE and FIPA-OS are good examples of such development environments. Bellifemine et al. (2001) describe JADE, a development environment for multi-agent systems based on Java and on the FIPA standards (http://sharon.cselt.it/projects/jade). The system has been under development since 1999, and it includes tools to build agents and to manage and distribute agents. Similar to JADE, FIPA-OS is also designed to methodologically support the construction and management of agent systems by providing appropriate tools (http://fipa-os.sourceforge. net). FIPA-OS is an open-source project. At the end of 2001, an agent framework called Micro-FIPA-OS was introduced for mobile applications on PDAs and similar devices. In the area of Semantic Web Services, a number of research frameworks are emerging. One of the most prominent toolsets is provided by the groups developing the Web Service Modelling Ontology (WSMO, http://www.wsmo.org). Ontology Editors If there is no ontology available for a specific application domain, or if we want to further develop an existing ontology, we will have to use a tool to maintain the hierarchical order of the terms and their definitions. This is where ontology editors come in. An ontology editor supports us in defining a conceptual hierarchy, including attributes and relations between the concepts, and it assists us in creating synonym lists and multi-lingual thesauruses. Most of the more recent tools support RDF Schema and DAML + OIL or OWL by way of import and export functions. Examples of such editors include Protege2000 (Noy et al. 2001), OntoEdit (Sure et al. 2002), and OilEd (Bechhofer et al. 2001).

Note: If you are looking for good and high quality web space to host and run your java application check Lunarwebhost java web hosting services

312 The Semantic Web The Network of

14.3 Specifics of Semantic Web Applications 313 orchestration.Inother words Orchestration is how service functionality is achieved by aggregating other web services. The service paradigm will be a crucial precondition for the industrial use of the Semantic Web. The semantic description of Web Services will allow better advertising and subsequently, better discovery of Web Services and more importantly supply a better solution for the selection, invocation, composition, monitoring and interoperation of Web Services. 14.3.5 Integration into Web Engineering If we want to expand the method for the development of Web applications by a semantic component, it is useful to remember how a semantic Web application differs from a traditional Web application: Agents: The first fundamental difference is the mandatory assumption that a semantically marked up information space will be visited by software agents, and that these agents can extract knowledge from this space with or without the help of an information provider. This means that the information space should have an agent-supporting architecture. Knowledge representation: The second fundamental assumption is that the information space provides a high degree of semantic comparability with other information spaces. This means that extremely high requirements are posed on standardization of the terminology and its interpretation options. This can be facilitated by using a general knowledge representation language that allows converting semantic annotations into predicate logic and eventually into decidable statements. Consequently, a Semantic Web application will use a standardized language for knowledge representation. Knowledge modeling: A Web application that supports semantic annotation has to be fitted with an ontology during its design phase. In the simplest case, we would take an existing ontology. In the most complicated case, we would use a consolidation process within the user group of the relevant application domain to work out an ontology for the first time ever. Semantic annotation: If we decide to use an existing ontology, we will have to structure and label the information space based on this ontology. For complex applications, this will most likely be done by experts, who should be given appropriate tools, i.e., annotation editors, for the application s maintenance environment. For simpler and highly structured applications, it may be possible to automate part of the annotation work. Knowledge storage and query: An information space is characterized by its heterogeneous data elements (images, graphics, text, audio and video files). While structural and navigational concepts are generally well understood, it is much harder to classify the role of meta-data and knowledge concepts as well as queries. This expansion of a general architecture results in the following additional steps for the development method of Semantic Web applications: Adaptation of the system to software agents. Selection of a knowledge representation language with tool support, including adaptation of the tools to the concrete environment.

Note: If you are looking for good and high quality web space to host and run your java application check Lunarwebhost java web hosting services

312 The Semantic Web The Network of

312 The Semantic Web The Network of Meanings in the Network of Documents 5. Mediation: This is a necessary functionality aimed at solving semantic mismatches, which can happen at the data level, protocol level and/or at the process level. 6. Execution: This is the invocation of services following programmatic conventions. This supports Monitoring (control over the execution process), Compensation (providing transactional support and mitigating unwanted effects), Replacement (facilitating the substitution of services by equivalent ones) and Auditing (verification that the execution took place as expected). Semantic Web Service Ontologies were discussed in detail in the previous sections. However for the case of ontologies for the semantic web services the following two stand out: OWL-S: Semantic Markup for Web Services 2004: OWL-S is an OWL ontology to describe (semantic) web services. It does not aim at replacing existing web services standards but at providing a semantic layer over existing Web Services standards such as Web Services Description Language. It relies on WSDL for the invocation of web services and on Universal Description, Discovery and Integration for web services discovery. From the OWL-S perspective, a Semantic Web Service is provided by a Resource, presented by a Service Profile, described by a Service Model and supported by a Service Grounding. The Service Profile represents what the Service provides and capabilities of the Service; the Service Model describes how a service works and which are internal processes (Input; Preconditions; Outputs and Results) of the service. Processes can be of the types Atomic, Simple, or Composite. Finally, the Service Grounding builds upon WSDL descriptions to define the message structure and physical binding layer and maps an XML schema to OWL concepts. Web Service Modeling Ontology (WSMO): Feier and Domingue (2005) is a conceptual model for Semantic Web Services. It is an ontology for core elements for the services and consists of a formal description language (Web Services Modeling Language) and an execution environment (Haller et al. 2005). WSMO defines the modeling elements for Semantic Web services based on the conceptual grounding specified in the four main components of the Web Service Modeling Framework (Fensel and Bussler 2003): Ontologies provide the formal semantics to the information used by all other components. Goals specify objectives that a client might have when consulting a Web service. Web services represent the functional (and behavioral) aspects, which must be semantically described in order to allow semi-automatic use. Mediators used as connectors to provide interoperability facilities among the other elements. Web Services have an aspect of capability, which defines their functionality in terms of pre-and post-conditions, assumptions and effects. A Web Service defines one and only one capability. The interface of a Web Service provides further information on how the functionality of the Web Service is achieved. It contains: A Choreography, which describes the communication pattern, that allows to one to consume the functionality of the Web service, named choreography. In other words Choreography is how to interact with a service to consume its functionality. An Orchestration, which describes how the overall functionality of the Web service is achieved by means of cooperation of different, Web service providers, named

Note: If you are looking for good and high quality web space to host and run your java application check Lunarwebhost java web hosting services

14.3 Specifics of Semantic Web Applications 309 14.3.2

14.3 Specifics of Semantic Web Applications 311 Semantic WEB SERVICES Dynamic Web UDDI, WSDL, SOAP Services WWW Semantic Web Static URI, HTML, HTTP RDF, RDFS, OWL Figure 14-10 1Web, Semantic Web, Web Services and Semantic Web Services. (For technical details on Web Services please refer to Chapter 6.) sells airline tickets between Vienna and Amsterdam and that accepts payment by Master card. Currently, a human must perform this task, first using a search engine to find a service and then either reading the Web site associated with that service or executing the service to see whether it adheres to the specified task. With semantic markup of services, we can specify the information necessary for Web service discovery as computer-interpretable semantic markup at the service Web sites, and a service registry or (ontology-enhanced) search engine can automatically locate appropriate services. 3. Selection: This task implies choosing the most appropriate service for a given task assuming that, in principle, a potentially large number of services can fulfill the requirements of the specified task. Here the criterion for selection of a particular service from the pool can be universal or user specific with parameters such as money involved, time constraints, etc. 4. Composition: This task implies combining services to achieve the specified goal. Sometimes a single service may not be sufficient to fulfill the specified goal. It may require combining various services in a specific order where the outcome of one or more service executions will be the input to another set of services. Currently, if some task requires a composition of web services that need to interoperate, then the user must select those web services, manually specify the composition, ensure that any software for interoperation is custom-created, and provide the input at choice points (for example, selecting a flight from several options). With semantic markup of web services, the information necessary to select, compose, and respond to services is encoded at the service web sites. This figure is taken from the tutorial presentation on Semantic Web Services in the European Semantic Web Conference, Heraklion, Crete, 2005.

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services

14.3 Specifics of Semantic Web Applications 309 14.3.2

310 The Semantic Web The Network of Meanings in the Network of Documents point in time. This doesn t mean that the old information has to be deleted or overwritten, because it may still be valid for some statements. 6. Minimalist design. The W3C initiatives plan for the Semantic Web to develop as simple mechanisms as possible, leaving much freedom for experiments. This means that the standardization is somewhat laissez-faire , which is stimulating, but also confusing, as we can see from the fact that various standards overlap. 14.3.4 Semantic Web Services Today s Web was designed primarily for human interpretation and use. Nevertheless, we are seeing increased automation of Web service interoperation, primarily in B2B and e-commerce applications. Generally, such interoperation is realized through APIs that incorporate hand-coded information-extraction code to locate and extract content from the HTML syntax of a Web page presentation layout. Unfortunately, when a Web page changes its presentation layout, the API must be modified to prevent failure. Fundamental to having computer programs or agents implement reliable, large-scale interoperation of Web services is the need to make such services computer interpretable to create a Semantic Web of services whose properties, capabilities, interfaces, and effects are encoded in an unambiguous, machine-understandable form. To realize the vision of Semantic Web Services (McIlraith et al. 2001), creating semantic markup of Web services that makes them machine understandable and use-apparent is necessary. Equally important is the development of agent technology that exploits this semantic markup to support automated Web service composition and interoperability. Driving the development of the markup and agent technology is the automation of tasks that semantic markup of Web services will enable most importantly, service discovery, execution,and composition and interoperation. Semantic Web Services offer the possibility of highly flexible Web services architectures, where new services can be quickly discovered, orchestrated and composed into workflows. Figure 14-10 highlights the Semantic Web Services (Fensel and Bussler 2002) that are intended to make the web realize its full potential. The following discusses the various aspects of Semantic Web Services: Semantic Web Services define exhaustive description frameworks for describing Web Services and related aspects by means of Web Service Description Ontologies. They support ontologies as underlying data models to allow machine-based data interpretation and they define semantically driven technologies for the automation of the Web Service usage process. The following describes the usage process (Paolucci et al. 2003) for Semantic Web Services: 1. Publication: This is to make available the description of the capability of a service. The capability of a service declares the various parameters associated with it and the functionality it has to offer to the outside world (of agents and other services). 2. Discovery: This is locating different services suitable for a given task. It involves automatically locating Web services that provide a particular service and that adhere to requested properties (task). A user might say, for example, Find a service that

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services

14.3 Specifics of Semantic Web Applications 309 14.3.2

14.3 Specifics of Semantic Web Applications 309 14.3.2 Agents In practice, we will probably have to deal with the problem that, though most known semantic markup methods are relatively mature, only a few solutions introduce proper agent systems, which understand semantic markup. On the positive side, however, agent-based solutions can be replaced by more conventional solutions, for instance Web services. These more conventional solutions use the ontology to integrate schemas from existing, previously heterogeneous data repositories. To this end, Web services are used to act as wrappers for the data repositories. The DAML-S description language (for Web Services) tries to contribute in this field (Ankolenkar et al. 2002). However, if the target application requires a high degree of complex and autonomous behavior, then an additional group of mediators and perhaps even facilitators have to be added to the integration layer. This type of target application is characterized by a heavily distributed multi-layer architecture, which is currently still associated with high development risks. Most developer teams will probably not have all the required competencies and, at the same time, some of the available technologies are still under development. In addition, these applications are characterized by high technical complexity. 14.3.3 Ontologies The following six principles have been identified to be characteristic for the Semantic Web (Koivunen and Miller 2001). All the listed points require some rethinking in general and about ontologies in particular, compared with the traditional approach in AI research and the technologies developed in this field. 1. Everything can be identified by URIs. Both things from the real (physical) world and things from the digital world can be referenced. The approach is pragmatic and allows, for example, to identify a person by referencing that person s employer address and e-mail. 2. Resources and links can be typed. While humans give meaning to resources and links on the traditional Web, the Semantic Web will allow to create a machine-readable way of allocating meanings to facilitate referencing online terminologies and ontologies. 3. Incomplete information must be tolerated. In contrast to many classic AI systems, the so-called closed-world assumption cannot be maintained on the Semantic Web. So, if we draw logical conclusions from a statement, then the fact that information is missing from the knowledge base should not automatically result in concluding that the statement is FALSE. 4. No claim is laid to absolute truth. Also in contrast to classic systems, the Semantic Web should tolerate claims to local levels of truth. 5. Evolution of information or resources is possible. Just as humans and things change over time, there will also be information that was correct at a certain point in time, but which should be replaced by new information at another

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services

306 The Semantic Web The Network of

308 The Semantic Web The Network of Meanings in the Network of Documents Table 14-2 OWL constructs and their relationships to RDF and RDF-S OWL Construct Description Comment/Example owl:Class Defines a class. rdf:Property Defines an association. Is taken from RDF as definition. rdfs:subClassOf Is a subclass. Is taken from RDF Schema as definition. rdfs:subPropertyOf Is a sub-association. See above RDF Schema rdfs:domain Is the mathematical domain of a See above RDF Schema function. rdfs:range Is the mathematical range of a See above RDF Schema function. owl:Individual Is the declaration of an instance. Neither XML nor RDF are expressive enough to represent knowledge structures such as ontologies well, and to model them in a sufficiently formal manner. This was the reason why both the XML protagonists and the RDF advocates have defined languages in the form of XML Schema and RDF Schema, respectively. The expressivity of both these languages is somewhere between RDF and OWL. The layered model for Web languages aspired to by Tim Berners-Lee has not yet been achieved, because description languages overlapping the range from XML to OWL have been constructed, which, when interacting, have many different possibilities to represent the same fact. It is impossible to say today which description languages will eventually gain acceptance in the future. What can be said is that today s choice (2005) for Semantic Web research applications is the XML-RDF-OWL stack, whereas industrial solutions usually content themselves with application-specific XML-RDF descriptions. 14.3 Specifics of Semantic Web Applications The technologies currently emerging for Semantic Web applications have not yet reached industrial maturity, so that we can t really speak of much industrial engineering practice in this field. Nevertheless, many innovative vendors have introduced initial components or prototypes to the market. 14.3.1 Semantic Markup In practical applications, semantic annotations using some form of mark up will likely be the most frequent customer requirement in connection with the development of a Semantic Web application. If concepts of the Semantic Web are to establish themselves in practical applications at all, then corresponding agent systems will have to be developed, too. Semantic markup requires, firstly, a good ontological model and, secondly, the annotators sound understanding of the application-specific ontology.

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services

306 The Semantic Web The Network of

14.2 Technological Concepts 307 Table 14-1 RDF Schema constructs (excerpt) RDF/RDFS Construct Description Comment/Example Class Definition rdfs:Resource All things described by RDF; entities are resources. This is the root class from which all others are derived. rdfs:Class rdfs:Literal Definition of a class (using rdf:type). rdfs:Class is an instance of rdfs:Class. rdfs:Literal is an instance of rdfs:Class. rdf:type rdf:XMLLiteral Predicate used to allocate typification. Predicate used to designate XML literals. rdf:type is an instance of rdf:Property. rdfs:subClassOf Predicate used to specify an inheritance hierarchy. rdfs:subClassOf is an instance of rdf:Property. be found at (http://www.w3.org/2000/01/rdf-schema). Table 14-1 lists some of the important RDF Schema constructs. If we want to express that automobile is a class in a user-defined schema (with mymodel as prefix), we form an RDF-3 tuple (triple): mymodel:automobile rdf:type rdfs:Class To derive a subclass, lorry, from automobile, we write the following 3-tuple: mymodel:lorry rdfs:subClassOf mymodel:automobile We can now allocate associations to the schema for automobile. First, we use a type assignment, weight-in-kg, to declare an association (attribute), and then we specify that weight-in-kg is assigned to the automobile class: mymodel:weight-in-kg rdf:type rdf:Property mymodel:weight-in-kg rdfs:range mymodel:automobile OWL uses RDF Schema to form class hierarchies and to declare associations between classes. Table 14-2 lists the most important OWL constructs. RDF Schema, in turn, uses RDF constructs, like rdf:type or rdf:Property, to describe a schema.

Note: If you are looking for good and high quality web space to host and run your jsp application check Lunarwebhost jsp web hosting services