Service classification is an important step in realizing and creating an effective SOA implementation. .A Good classification system can simplify the task for finding services, promoting re usability and service composition. It is easier to search for services using query like - "find all services serving home loan". In the above query, home loan is a entity, which is part of your classification system.
Classifying the services can describe the capability of services -like "the transaction time for the service ", " security requirements for the service" and other service capabilities , based on your requirements.
In order to create entity and relationships, you can use Ontology Web language and than create taxonomies. Taxonomy is a system of hierarchical types that can be used to describe entities. The types are expressed in a class and subclass system. For instance in the above example - Loan is type of entity, which has sub classes Home Loan and Auto Loan.
The classification system would be typically created in your Service Registry. Service Registry like IBM WebSphere Service Registry and Repository provides you to ability to create a classification system for services either by loading an OWL file or using the user interface which abstracts out the OWL format from the user.
For creating OWL files you can use - IBM Integrated Ontology Development Toolkit, which provides a tooling environment to create OWL or an open source toolkit like Protege.
To properly model and manage a service-oriented architecture (SOA), enterprise architects must maintain active representations of the services available to the enterprise. Specifically, to discover and organize their services, the architects must use best practices that model and assemble services using metadata, encapsulate business logic in metadata for dynamic binding, and manage with metadata. Ontologies provide a very powerful and flexible way to aggregate, visualize, and normalize this service metadata layer.
Ontology is a network of concepts, relationships, and constraints that provide context for data and information as well as processes. Ontologies enhance service discovery, modeling, assembly, mediation, and semantic interoperability. They improve the way people browse, explore, and interact with complex metadata information spaces. A business ontology is a formal specification of business concepts and their interrelationships that facilitates machine reasoning and inference. A business ontology ties systems together using metadata, much as a database ties together discrete pieces of data. This abstraction provides agility and flexibility, as interfaces can be changed and new resources and subscribers added easily, even while the system is running.
Semantics are the future of service-oriented integration. Semantic technologies provide an abstraction layer above existing IT technologies, one that enables the bridging and interconnection of data, content, and processes across business and IT silos. Finally, from the human interaction perspective, semantic technologies add a new level of semantic portals that provide far more intelligent, relevant, and contextually aware interactions than those available with the traditional point-to-point integration approach for portal-based information delivery.
For SOA and dynamic BPM applications, it a key requirement for making process agile and change based on business contexts without much latency and using semantic web concepts as descried above can aid in realizing effective dynamic BPM solutions.
The World Wide Web is the biggest repository of information ever created, with growing contents in various languages and fields of knowledge. But, in the long run, it is extremely difficult to make sense of this content.The World Wide Web is based mainly on documents written in Hypertext Markup Language (HTML), which are rendered by a browser.The HTML contents in nothing but a series of texts (content) which has limited value to understeand and interpret the meaning associated with that content.
For instance take an example of a HTML page providing yellow page information about vendor selling automobiles.The HTML document typically has some meta-tags that provides that this page contains information about cars which is used by search engine to find the information- but there is no capability within the HTML itself to assert that the this automobile is a compact car or suv, whether is new or used, what are the discounts offered and so on. Instead, the HTML would display this information in a table that a given automobile is a new compact car with 10% discounts. There is no way in HTML to describe this relationship or even assert that a given car is a compact car and this information can be effectively search in world wide web.
Once the Semantic Web technologies are applied to world wide web, it can provide the ability to attach a meaning to the content, describe the relationship between what each piece of information is about and give semantic meaning to the content item. Search engines can collaborate and come up with an classification model (based on ontology) where they can categorize content associate with the web pages, where by search engines become more effective than they are now, and users can find the precise information they are hunting.
An early form of attaching some meaning to existing content is tagging, where users can tag html pages for relevant content - and search engines can search for tags. The user participation for tagging each content when they find the right result becomes relevant for effective categorization of already existing contents. Both the technology and user participations will be the key factors for realizing the semantic web
In general, semantics is the study of meaning (The word "semantic" comes from the Greek semantikos, or "significant meaning," derived from sema, or "sign." )
Semantic Web technologies help separate meanings from data, document content, or application code, using technologies based on open standards. If a computer understands the semantics of a document, it doesn't just interpret the series of characters that make up that document: it understands the document's meaning.
The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. You can think of the Semantic Web as an efficient way to represent data on the World Wide Web, or as a database that is globally linked, in a manner understandable by machines, to the content of documents on the Web. Semantic technologies represent meaning using ontologies and provide reasoning through the relationships, rules, logic, and conditions represented in those ontologies.
To represent the Semantic Web, you'll use the following technologies:
Each of these concepts is well explained in my article - http://www.ibm.com/developerworks/web/library/wa-semweb/