520 likes | 718 Views
Introduction to Semantic Web. Many of the slides of this chapter are from http://www.csd.uoc.gr/~hy566/Handouts.htm. What is the Semantic Web (SW)?. WWW: collection of distributed interlinked documents encoded in html Content written in natural language
E N D
Introduction to Semantic Web Many of the slides of this chapter are from http://www.csd.uoc.gr/~hy566/Handouts.htm
What is the Semantic Web (SW)? • WWW: collection of distributed interlinked documents encoded in html • Content written in natural language • Computers don’t understand their meaning • In SW, machine readable annotations are added and web-pages are linked by virtue of similar content • Content of Web-pages is encoded by special vocabularies called “ontologies” • SW offers new capabilities Introduction to Semantic Web
Today’s Web • Most of today’s Web content is suitable for human consumption • Even Web contentthatisgeneratedautomaticallyfromdatabasesisusuallypresentedwithouttheoriginalstructuralinformationfoundindatabases • Typical Web uses today people’s • seeking and making use of information, searching for and getting in touch with other people, reviewing catalogs of online stores and ordering products by filling out forms Introduction to Semantic Web
Keyword-BasedSearchEngines • Current Web activities are not particularly well supported by software tools • Except forkeyword-basedsearchengines(e.g., Google, AltaVista, Yahoo) • The Web wouldnothavebeenthehugesuccessitwas, wereitnotforsearchengines Introduction to Semantic Web
Problems of Keyword-Based Search Engines • Low or no recall • Results are highly sensitive to vocabulary • Results are single Web pages • Human involvement is necessary to interpret and combine results • Results of Web searches are not readily accessible by other software tools Introduction to Semantic Web
The Key Problem of Today’s Web • Themeaningof Web contentisnotmachine-accessible: lack of semantics • It is simply difficult to distinguish the meaning between these two sentences: • I am a professor of computer science. • I am a professor of computer science, you may think. Well, . . . Introduction to Semantic Web
The Semantic Web Approach • Represent Web content in a form that is more easily machine-processable. • Use intelligent techniques to take advantage of these representations. • The Semantic Web will gradually evolve out of the existing Web, it is not a competition to the current WWW Introduction to Semantic Web
Semantic Web Enabled Knowledge Management • Knowledge will be organized in conceptual spaces according to its meaning • Automated tools for maintenance and knowledge discovery • Semantic query answering • Query answering over several documents • Defining who may view certain parts of information (even parts of documents) will be possible. Introduction to Semantic Web
The Semantic Web Impact – B2C Electronic Commerce • A typical scenario: user visits one or several online shops, browses their offers, selects and orders products. • Ideally humans would visit all, or all major online stores; but too time consuming • Shopbotsare a useful tool Introduction to Semantic Web
Limitations of Shopbots • They rely on wrappers: extensive programming required • Wrappers need to be reprogrammed when an online store changes its outfit • Wrappers extract information based on textual analysis • Error-prone • Limited information extracted Introduction to Semantic Web
Semantic Web Enabled B2C Electronic Commerce • Software agents that can interpret the product information and the terms of service • Pricing and product information, delivery and privacy policies will be interpreted and compared to the user requirements. • Informationaboutthereputationofshops • Sophisticatedshoppingagentswillbeabletoconductautomatednegotiations Introduction to Semantic Web
The Semantic Web Impact – B2B Electronic Commerce • Greatest economic promise • Currently relies mostly on EDI (Electronic Data Interchange) • Isolated technology, understood only by experts • Difficulttoprogramandmaintain, error-prone • Each B2B communication requires separate programming • Web appears to be perfect infrastructure • But B2B not well supported by Web standards Introduction to Semantic Web
Semantic Web Enabled B2B Electronic Commerce • Businesses enter partnerships without much overhead • Differencesinterminologywillberesolvedusingstandardabstractdomainmodels • Datawillbeinterchangedusingtranslationservices • Auctioning, negotiations, anddraftingcontractswillbecarriedoutautomatically (orsemi-automatically) bysoftwareagents Introduction to Semantic Web
Semantic Web Technologies • ExplicitMetadata • Ontologies • Logic and Inference • Agents Introduction to Semantic Web
On HTML • Web content is currently formatted for human readers rather than programs • HTML is the predominant language in which Web pages are written (directly or using tools) • Vocabulary describes presentation Introduction to Semantic Web
An HTML Example <h1>AgilitasPhysiotherapy Centre</h1> Welcome to the home page of the Agilitas Physiotherapy Centre. Do you feel pain? Have you had an injury? Let our staff Lisa Davenport, Kelly Townsend (our lovely secretary) and Steve Matthews take care of your body and soul. <h2>Consultation hours</h2> Mon 11am - 7pm<br> Tue 11am - 7pm<br> Wed 3pm - 7pm<br> Thu 11am - 7pm<br> Fri 11am - 3pm<p> But note that we do not offer consultation during the weeks of the <a href=". . .">State Of Origin</a> games… Introduction to Semantic Web
Problems with HTML • Humans have no problem with this • Machines (software agents) do: • How distinguish therapists from the secretary, • How determine exact consultation hours • They would have to follow the link to the State Of Origin games to find when they take place. Introduction to Semantic Web
A Better Representation <company> <treatmentOffered>Physiotherapy</treatmentOffered> <companyName>Agilitas Physiotherapy Centre</companyName> <staff> <therapist>Lisa Davenport</therapist> <therapist>Steve Matthews</therapist> <secretary>Kelly Townsend</secretary> </staff> </company> Introduction to Semantic Web
Explicit Metadata • This representation is far more easily processable by machines • Metadata: data about data • Metadata capture part of the meaning of data • Semantic Web does not rely ontext-basedmanipulation,butratheronmachine-processablemetadata Introduction to Semantic Web
Ontologies [Jepsen 2009] • The term ontology originates from philosophy • The study of the nature of existence • An ontology is an explicit and formal specification of a conceptualization • A method for representing items of knowledge (e.g., ideas, facts, thinks) in a way that defines the relationships (e.g., part-of, functional) and classifications of concepts within a specified domain of knowledge Introduction to Semantic Web
Typical Components of Ontologies • Terms denote important concepts (classes of objects) of the domain • e.g., professors, staff, students, courses, departments • Relationships between these terms: typically class hierarchies • a class C to be a subclass of another class C' if every object in C is also included in C' • e.g., all professors are staff members Introduction to Semantic Web
Further Components of Ontologies • Properties: • e.g., X teaches Y • Value restrictions • e.g. , only faculty members can teach courses • Disjointness statements • e.g. , faculty and general staff are disjoint • Logical relationships between objects • e.g., every department must include at least 10 faculty Introduction to Semantic Web
Example of a Class Hierarchy Introduction to Semantic Web
The Role of Ontologies on the Web • Ontologies provide a shared understanding of a domain: semantic interoperability • overcome differences in terminology • mappings between ontologies • Ontologies are useful for the organization and navigation of Web sites Introduction to Semantic Web
The Role of Ontologies in Web Search • Ontologiesareusefulforimprovingtheaccuracyof Web searches • search engines can look for pages that refer to a precise concept in an ontology • Web searchescanexploitgeneralization/specializationinformation • If a query fails to find any relevant documents, the search engine may suggest to the user a more general query • If too many answers are retrieved, the search engine may suggest to the user some specializations Introduction to Semantic Web
Web Ontology Languages • In XML there is no intended meaning associated with the nesting of tags • There are many ways of representing the same meaning • <course name=“Discrete Math”> <lecturer>David Billington</lecturer> </course> • <lecturer name=“David Billington”> <teaches>Discrete Math</teaches> </lecturer> • <teachingoffering> <lecturer>David Billington</lecturer> <course>Discrete Math</course> </teachingoffering> Introduction to Semantic Web
RDF Schema • RDF is a data model for objects and relations between them • Does not provide syntax for defining classes, properties and cannot related to one another • RDF Schema is a vocabulary description language • Uses RDF and describes properties and classes of RDF resources • RDFS vocabulary: http://www.w3.org/2000/01/rdf-schema • Provides semantics for generalization hierarchies of properties and classes Introduction to Semantic Web
RDF – RDFS layers Introduction to Semantic Web
Web Ontology Languages • OWL: Aricher ontology language built on RDF • OWL adds semantics and vocabulary to RDF and RDFS giving it more power to express: • relations between classes e.g., disjointness • Cardinality e.g. “exactly one” • Characteristics of properties (e.g., symmetry) Introduction to Semantic Web
Logic and Inference • Logic is the discipline that studies the principles of reasoning • Formal languages for expressing knowledge • Well-understoodformalsemantics • Declarative knowledge: we describe what holds without caring about how it can be deduced • Automatedreasoners can deduce (infer) conclusions from the given knowledge Introduction to Semantic Web
An Inference Example prof(X) faculty(X) faculty(X) staff(X) prof(michael) We can deduce the followingconclusions: faculty(michael) staff(michael) prof(X) staff(X) Introduction to Semantic Web
Logic versus Ontologies • The previous example involves knowledge typically found in ontologies • Logiccanbeusedtouncoverontologicalknowledgethatisimplicitlygiven • It can also help uncover unexpected relationships and inconsistencies • Logic is more general than ontologies • The more expressive a logic is, the more computationally expensive it becomes to draw conclusions Introduction to Semantic Web
Software Agents • Software agents work autonomously and proactively • A personal agent on the Semantic Web will: • receive some tasks and preferences from the person • seek information from Web sources, communicate with other agents • compare information about user requirements and preferences, make certain choices • give answers to the user Introduction to Semantic Web
Semantic Web Agent Technologies • Metadata • Identify and extract information from Web sources • Ontologies • Web searches, interpret retrieved information • Communicate with other agents • Logic • Process retrieved information, draw conclusions Introduction to Semantic Web
Semantic Web Agent Technologies (2) • Further technologies (orthogonal to the Semantic Web technologies) • Agent communication languages • Formal representation of beliefs, desires, and intentions of agents • Creation and maintenance of user models. Introduction to Semantic Web
A Layered Approach • The development of the Semantic Web proceeds in steps • Each step building a layer on top of another Principles: • Downward compatibility • Upward partial understanding Introduction to Semantic Web
The Semantic Web Layer Tower Introduction to Semantic Web
Semantic Web Layers • XML layer • Syntactic basis, allows one to write structured Web documents • RDF layer • RDF basic data model for facts • RDF Schema simple ontology language • Ontology layer • More expressive languages than RDF Schema • OWL plusa rule-based language (SWRL) • Proof layer • Deduction process, representation of proofs, proof validation • Trust layer • Ensures trustful information and operations Introduction to Semantic Web
SW Top Layers • Logic, Proof and Trust layers: research areas and simple application demonstrations are known to exist • The Logic layer enables the writing of rules • TheProof layer executes the rules and evaluates together with the Trust layer whether to trust the given proof or not for the application at hand Introduction to Semantic Web
Semantic Web Example [Golbeck et.al, 2004] • Consider the example of making a page about a trip to Paris • The page contains text describing the trip, photos, dates, names, places visited, hotels stayed etc. • In the existing Web the page is indexed by keywords and perhaps by the links included there • There is no way for a computer to understand its content and associate it with similar content (trips, persons etc.) elsewhere or draw conclusions about the trip • Date of trip “May 20-25”: cannot infer whether the person was or was not on travel on the 26th Introduction to Semantic Web
A Photo • Name: ParisPhoto 1 URL: http://www.example.com/photo1.jpg Date taken: May 25, 2009 Location: Parc Du Champ De Mars, Paris Person in photo: John Doe Person in Photo: Joe Blog Object in Photo: Eiffel Tower Introduction to Semantic Web
People in Photo • Name: John Doe First Name: John Last Name: Doe Age: 24 • Name: Joe Blog First Name: Joe Last Name: Blog Age: 26 Introduction to Semantic Web
Classes • SW resources are encoded in terms of classes, properties of classes, instances of classes forming ontologies • IS_A hierarchies and other relationships e.g., part-of, functional, etc. • SW resources are given unique names and referred to by their URI (e.g., URL of the owl document describing the trip) • http://www.example.com/parisTrip.owl#ParisPhoto1 • http://www.example.com/parisTrip.owl#JohnDoe • http://www.example.com/parisTrip.owl#joeBlog • This allows authors to make references to them from elsewhere Introduction to Semantic Web
Encoding Information • The basic information unit is the triple (subject, predicate, object or value) • Subject: http://www.example.com/parisTrip.owl#JohnDoe Predicate: http://www.example.com/parisTrip.owl#age Value: 23 • Subject: http://www.example.com/parisTrip.owl#JohnDoe Predicate: http://www.example.com/parisTrip#firstName Value: John • Subject: http://www.example.com/parisTrip.owl#ParisPhoto1 Predicate: http://www.example.com/parisTrip.owl#objectInPhoto object: http://www.example.com/parisHistoryOntology.owl#EifelTower Introduction to Semantic Web
RDF graphs • Each triple is a graph with two nodes, • All descriptions are encoded into an RDF graph • There are also super-classes “photo”, “people” from where photo1 and these persons inherited their properties person John Joe firstname firstname John Doe JoeBlog lastname lastname Blog Doe age age personinphoto personinphoto 24 photo 1 Photo 23 location file date objectinophoto Paris Paris.jpg Eiffel Tower May 26, 2009 Introduction to Semantic Web
RDF syntax • <rdf:RDF xmlns:http://www.w3c.org/2000/01/rdf-schema#> …. </rdf:RDF> • Specified that tags prefixed with rdf: are part of the namespace described at http://www.w3.org/2000.... Introduction to Semantic Web
RDFS - Classes • Classes are general categories that can be instantiated • <rdfs:Classrdf:ID=“Photo”/> • The class is assigned a unique name • Classes can also be sub-classed • <rdfs:Classrdf:ID=“Photo”> <rdfs:subclassofrdf:resource= http://example.com/mediaOntology.rdf#Image/> </rdfs:Class> • Subclasses are transitive: if X is a subclass of Y which is a subclass of Z then X is a subclass of Z Introduction to Semantic Web
RDF Properties • Properties describe attributes • All properties in RDF are described as instances of class rdf:Property • Eg.,<rdf:Propertyrdf:ID=“objectInPhoto”> <rdfs:domainrdf:resource=“#Photo”/> </rdf:Property> • Declares the property “objectOnPhoto” which can be attached to any class • In this example the domain of this property is limited to #Photo • Because the Photo class is declared within the same namespace (file) as the objectInPhotothe reference to it can be abbreviated Introduction to Semantic Web
RDF Properties (2) • Similarly to classes and subclasses, properties can become subPropertiesof a more general property • The person in photo can be a subset of the object in photo property <rdf:Propertyrdf:ID=“personInPhoto”> <rdfs:subPropertyOfrdf:resource=“#objectInPhoto”/> <rdfs:rangerdf:resource=“#Person”/> </rdf:Property> • The range restriction limits the type of values Introduction to Semantic Web
RDF Instances • Any person name can become instance of the class Person <Person rdf:ID=“JoeBlog”> <firstName>Joe</firstName> <lastName>Blog<lastName> </Person> Introduction to Semantic Web