Presentation is loading. Please wait.

Presentation is loading. Please wait.

ICE0534 – Web-based Software Development ICE1338 – Programming for WWW Lecture #12 Lecture #12 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information.

Similar presentations


Presentation on theme: "ICE0534 – Web-based Software Development ICE1338 – Programming for WWW Lecture #12 Lecture #12 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information."— Presentation transcript:

1 ICE0534 – Web-based Software Development ICE1338 – Programming for WWW Lecture #12 Lecture #12 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University (ICU) - Summer

2 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Announcements Project Presentation (Aug. 11) Project Presentation (Aug. 11) Introduce the team members and their roles Introduce the team members and their roles Explain the main objectives and design goals Explain the main objectives and design goals Explain the system architecture Explain the system architecture Show results (a demo) Show results (a demo) Evaluate the system (pros and cons) Evaluate the system (pros and cons) Discuss about the main contributions of the system and future work Discuss about the main contributions of the system and future work Q&A Q&A

3 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Last Lecture Web Services Composition Web Services Composition Ph.D. Lecture Ph.D. Lecture Modeling Stateful Resource with Web Services [p1: Byung-sang Kim] Modeling Stateful Resource with Web Services [p1: Byung-sang Kim] Technology Reviews Technology Reviews BPEL4WS [u16: Sungjun Park] BPEL4WS [u16: Sungjun Park] Technology Surveys Technology Surveys Business process [g22: Kuyul Noh] Business process [g22: Kuyul Noh] Service brokering [g23: Yusik Park] Service brokering [g23: Yusik Park]

4 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University This Lecture Semantic Web Semantic Web Ph.D. Lecture Ph.D. Lecture Integration of Biological XML data [p2: Woo-Hyuck Jang] Integration of Biological XML data [p2: Woo-Hyuck Jang] Technology Surveys Technology Surveys Semantic Web Services [g24: Chan-kyu Park] Semantic Web Services [g24: Chan-kyu Park] Web-services Challenges [g21.1: Janarbek] Web-services Challenges [g21.1: Janarbek] Web Services Security [g21.2: Jongsoo Bae] Web Services Security [g21.2: Jongsoo Bae] (1) (3) (2) (4)

5 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Search for ‘Jordan’

6 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University What is the problem of the current Web? No way to represent and transmit users intention (meaning) to a Web Service Irrelevant information returned from a search engine

7 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University What is metadata ? Metadata: machine-understandable information about Web resources or other things - Tim Berners-Lee Metadata: machine-understandable information about Web resources or other things - Tim Berners-Lee Data about data Data about data Well defined semantic structure Well defined semantic structure Set of assertions(attributes) about data Set of assertions(attributes) about data e.g., RFC822 Header e.g., RFC822 Header Dublin Core [http://purl.org/dc/]: Dublin Core [http://purl.org/dc/]: author-generated description of Web resources author-generated description of Web resources (15 elements) (15 elements)

8 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Benefits of Metadata Readable by both humans and machines Readable by both humans and machines Interchangeable among heterogeneous agents Interchangeable among heterogeneous agents Facilitate and improve the retrieval of resources Facilitate and improve the retrieval of resources

9 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Semantic Web Semantic Web provides a model to represent and exchange metadata of Web resources Semantic Web provides a model to represent and exchange metadata of Web resources Definition: "The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation." – Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001 Definition: "The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation." – Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001The Semantic WebThe Semantic Web

10 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Syntactic vs. Semantic Web HTML (Hypertext Markup Language) URL (Uniform Resource Locator) Keyword-based Queries e.g., ICU Kildong RDF (Resource Description Framework) URI (Uniform Resource Identifier) Semantically-based Queries e.g., Find Kildong who is a student at ICU at ICU University isA Educational Unit isA ICU hasName hasStudents hasWeb … hasMember Kildong hasName

11 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF (Resource Description Framework) An infrastructure that enables the encoding, exchange and reuse of structured metadata An infrastructure that enables the encoding, exchange and reuse of structured metadata Design of common conventions of semantics, syntax and structure Design of common conventions of semantics, syntax and structure Components: Components: RDF Data Model: Graph-based model for representing named properties and their values RDF Data Model: Graph-based model for representing named properties and their values RDF Syntax: Use XML, N3, etc. RDF Syntax: Use XML, N3, etc. RDF Schema: Declare vocabularies for representing the properties and their relations RDF Schema: Declare vocabularies for representing the properties and their relations

12 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF Data Model RDF Graph-based Model RDF Graph-based Model Represent attributes of resources and relationships between resources Represent attributes of resources and relationships between resources Triple: Triple: Description: a collection of triples describing a resource Description: a collection of triples describing a resource Subject Predicate Object

13 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University XML-based RDF Syntax Use XML for encoding metadata Use XML for encoding metadata Uniquely identifies property-types by using the XML namespace Uniquely identifies property-types by using the XML namespace e.g., e.g., document1 Author1 dc:creator Author1

14 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University N3 (Notation 3) A RDF syntax that is easier to write A RDF syntax that is easier to write General statement syntax: General statement syntax:.. e.g., dc:. :document1 dc:creator "Author1". document1 Author1 dc:creator

15 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF Schemas Declare vocabularies, the set of semantics property- types defined by a particular community Declare vocabularies, the set of semantics property- types defined by a particular community Define restrictions of usage for properties Define restrictions of usage for properties Object-oriented modeling Object-oriented modeling Accessed by de-referencing the schema URI Accessed by de-referencing the schema URI Components: Components: Picture from “RDF Schema Specification,” W3C

16 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Ontology “The study of existence” [John Sowa] “The study of existence” [John Sowa] “A particular theory about the nature of being or the kinds of existents” [Merriam-Webster] “A particular theory about the nature of being or the kinds of existents” [Merriam-Webster] “Explicit specification of a conceptualization” [Tom Gruber] “Explicit specification of a conceptualization” [Tom Gruber] The names of entities in the universe of discourse (the set of objects that can be represented, e.g., classes, relations, functions, objects) The names of entities in the universe of discourse (the set of objects that can be represented, e.g., classes, relations, functions, objects) Text descriptions about what the names mean Text descriptions about what the names mean Formal axioms that constrain the interpretation Formal axioms that constrain the interpretation Vocabularies of representing semantics Vocabularies of representing semantics

17 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University An Ontology Spectrum Catalog/ID Controlled Vocabulary (Terms/Glossary) Thesauri (Synonyms) Term Hierarchies (Informal is-a) Subclass Hierarchies (Formal is-a) Frames with Properties General Logic

18 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Open Directory

19 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Cyc Ontology Thing Individual Object Intangible Event Represented Thing StuffIntangibleObject Collection Relationship IntangibleStuff Subsumption Relations … … …

20 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF Schemas – Core Elements Core Classes Core Classes rdfs:Resource: all things being described by RDF rdfs:Resource: all things being described by RDF rdfs:Class: generic concept of a Type or Category rdfs:Class: generic concept of a Type or Category rdf:Property: subset of resources that are properties rdf:Property: subset of resources that are properties Core Properties Core Properties rdf:type: a member of a class (an instance of a class) rdf:type: a member of a class (an instance of a class) rdfs:subClassOf: a subset/superset relations between classes rdfs:subClassOf: a subset/superset relations between classes rdfs:subPropertyOf: a specialization of a property rdfs:subPropertyOf: a specialization of a property Core Constraints Core Constraints rdfs:rage: value of a property whose range is constrained to be an instance of a certain class rdfs:rage: value of a property whose range is constrained to be an instance of a certain class rdfs:domain: a class on which a property may be used rdfs:domain: a class on which a property may be used

21 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF Schemas – Example car:MotorVehicle rdfs:subClassOf car:Vancar:PassengerVehiclecar:Truck car:MiniVan kia:Carnival ford:Sedan hyundai :Sonat a rdfs:type Instance Description

22 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF Containers To refer to a collection of resources or literals To refer to a collection of resources or literals Three types - Bag(unordered list), Sequence(ordered list), and Alternative Three types - Bag(unordered list), Sequence(ordered list), and Alternative e.g., e.g., Document1 Author1 dc:Creator rdf:Bag rdf:type Author2 Author3 rdf:_1 rdf:_3 rdf:_2 Author1 Author2 Author3

23 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University RDF Reifications Making statements about other RDF statements Making statements about other RDF statements e.g., e.g., Model the original statement as a resource Model the original statement as a resource e.g., e.g., $ product1$10.50 a:validUtil rdf:Statement rdf:predicate a:hasPrice rdf:object rdf:subject rdf:type product1 $10.50 a:hasPrice a:validUntil

24 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Benefits of RDF Independent: allows independent communities to define descriptive vocabularies without central coordination Independent: allows independent communities to define descriptive vocabularies without central coordination Scalable: supports the following features to make the system ubiquitous Scalable: supports the following features to make the system ubiquitous Canonicalization of a graph using triples Canonicalization of a graph using triples Easy to handle and look up Easy to handle and look up Incremental modifications to the base schema Incremental modifications to the base schema Reusable: allows users to define sharable schemas Reusable: allows users to define sharable schemas Object-oriented Object-oriented Extensible: subclass refinement Extensible: subclass refinement Interchangeable: RDF provides serialization syntaxes which allows the graph model to be exchanged between agents Interchangeable: RDF provides serialization syntaxes which allows the graph model to be exchanged between agents Syntax Neutral: evaluate equivalence in meaning (model) Syntax Neutral: evaluate equivalence in meaning (model)

25 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University HTML vs. RDF xmlns:aca='http://www.academia.ac.kr#'> Information and Communications University Information and Communications University Information and Communications University Information and Communications University

26 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University XML vs. RDF Metadata syntax Metadata syntax XML Schema; syntactic validation XML Schema; syntactic validation Parsing result: a parse tree Parsing result: a parse tree Semantic structure Semantic structure RDF Schema; semantic validation RDF Schema; semantic validation Parsing result: a semantic graph Parsing result: a semantic graph Document1 Author1 :document1 :creator "Author1". subelement creatoruridocument1 content nameAuthor1 content subelement document1Author1 creator

27 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University DAML & OWL DAML (DARPA Agent Markup Language) DAML (DARPA Agent Markup Language) Semantic extension (vocabularies) of RDF Semantic extension (vocabularies) of RDF Provide a language to represent classes, subclasses, properties, sub-properties, domain, range, cardinality, inverse relation, etc. Provide a language to represent classes, subclasses, properties, sub-properties, domain, range, cardinality, inverse relation, etc. OWL (Web Ontology Language) OWL (Web Ontology Language) Revision of DAML + OIL (Ontology Inference Layer) Revision of DAML + OIL (Ontology Inference Layer) Ontologies that can be represented by OWL is located higher in the ontology spectrum Ontologies that can be represented by OWL is located higher in the ontology spectrum

28 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Jena A Java API which can be used to create and manipulate RDF graphs A Java API which can be used to create and manipulate RDF graphs Provides object classes to represent graphs, resources, properties and literals Provides object classes to represent graphs, resources, properties and literals Developed by HP Lab in UK Developed by HP Lab in UK Supports a mechanism to connect to a database system to manage triple data Supports a mechanism to connect to a database system to manage triple data Provides facilities to read/write RDF data from/to XML and N3 files Provides facilities to read/write RDF data from/to XML and N3 files

29 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Use of the Jena API // some definitions String personURI = "http://somewhere/JohnSmith"; String givenName = "John"; String familyName = "Smith"; String fullName = givenName + " " + familyName; // create an empty Model Model model=ModelFactory.createDefaultModel(); // create the resource // and add the properties cascading style Resource johnSmith = model.createResource(personURI) = model.createResource(personURI).addProperty(VCARD.FN, fullName).addProperty(VCARD.FN, fullName).addProperty(VCARD.N,.addProperty(VCARD.N, model.createResource() model.createResource().addProperty(VCARD.Given, givenName).addProperty(VCARD.Given, givenName).addProperty(VCARD.Family, familyName));.addProperty(VCARD.Family, familyName));

30 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Writing a Model in XML // now write the model in XML form to a file model.write(System.out); The output should look something like this: xmlns:vcard='http://www.w3.org/2001/vcard-rdf/3.0#'> John Smith John Smith John John Smith Smith

31 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Protégé A graphical ontology editor developed by Stanford A graphical ontology editor developed by Stanford

32 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University A Semantic Web Application Architecture Abstraction & Visualization Protege Memory Jena Triple Store MySQL DBMS’ ProtegeKnowledgeAcquisitionProtegeKnowledgeAcquisition Adaptor Code … Jena Triple Store Adaptor Code … RDF Files … Semantic Web Applications

33 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University A Semantic Application – CHIME

34 Summer ICE 0534/ICE1338 – WWW © In-Young Ko, Information and Communications University Semantic Web References W3C’s RDF Page: W3C’s RDF Page: RDF Interest Group: RDF Interest Group: Semantic Web Road map: Semantic Web Road map: RDF Primer: RDF Primer: Semantic Web Tutorial Using N3: Semantic Web Tutorial Using N3: An Introduction to RDF and the Jena RDF API: An Introduction to RDF and the Jena RDF API:


Download ppt "ICE0534 – Web-based Software Development ICE1338 – Programming for WWW Lecture #12 Lecture #12 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information."

Similar presentations


Ads by Google