350 likes | 506 Views
Resource Description Framework. Seminar Multimedia Heiko Naumann SS 2004. Table of content. Semantic Web – Introduction RDF History & Specifications RDF Graphs & N-Triples RDF Serialising (Coding) RDF Schema Example: RDF Vocabulary Practical RDF Summary. Semantic Web [1].
E N D
Resource Description Framework Seminar MultimediaHeiko NaumannSS 2004
Table of content • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
Semantic Web [1] Tim Berners-Lee :„The Semantic Web will bring structure to the meaningful content of Web pages, creating an environment where software agents roaming from page to page can readily carry out sophisticated tasks for users.“
Semantic Web [2] Aims of Semantic Web: • Additional information about content • Agents „understand“ content • Standards for uniformed storage • Ability for automatic analysis • Applications exchange data automatically • Relations and hierarchy displayable
Semantic Web [3] RDF in a Semantic Web: • RDF as a Tool for the Semantic Web • Older concept than „Semantic Web“ • Universal usage (every possible resource) • Concept, regardless if implementation • Addition, not substitution of technologies
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
RDF History • Based on the work of Ora Lassila and Ralph Swick (Application Data Exchange) • 1997 first draft • ~1998 W3C takes over draft • 1999 Model- and Syntax Specification (W3C) • 2000 RDF Schema Specification (W3C) • Splitting of specifications • Ongoing Process (Core Groups)
W3C Spezifikationen • RDF/XML Syntax Specification • RDF Vocabulary Description Language 1.0 (RDF Schema) • RDF Concepts and Abstract Syntax • RDF Semantics • RDF Primer (Examples & Explanation) • RDF Test Cases (Probs & Discussion)
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
RDF Konzept [1] Information as triple: <Source> <Property> <Value> In RDF as compound sentence: <Subject> Predicate <Object> Known as occurs in grammar (sentence building)
RDF Konzept [2] RDF Graph: • Abstract display (Tree - node) • Human readability • Complex graphs possible to display • Node – arc – Node • Regardless of implementation
RDF Konzept [3] Serialising: N-Triples Subject Predicate Object . <http://www.beispiel.de/folder/index.html> <http://purl.org/dc/elements/1.1/creator> „Hans Mustermann“ . <bbd:index.html> dc:creator „Hans Mustermann“ .
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
RDF / XML [1] Typical serialisation in XML-Syntax: <?xml version=“1.0“?> <rdf:RDF xmlns:rdf=„http://www.w3.org/1999/02/22-rdf-syntax-ns#“ xmlns:pstcn=„http://www.mydomain.de/rdf/schema/postcon/“> <rdf:Description rdf:about=“http://www.mydomain.de/artikel/artikel1.html“> <pstcn:author>Heiko Naumann</pstcn:author> <pstcn:datum>01.09.1999</pstcn:datum> </rdf:Description> </rdf:RDF>
RDF / XML [2] A resource as a property: <?xml version=“1.0“?> <rdf:RDF xmlns:rdf=„http://www.w3.org/1999/02/22-rdf-syntax-ns#“ xmlns:pstcn=„http://www.mydomain.de/rdf/schema/postcon/“> <rdf:Description rdf:about=“http://www.mydomain.de/artikel/artikel1.html“> <pstcn:subpageOf rdf:resource=“http://www.mydomain.de/serie1.html“ > </rdf:Description> </rdf:RDF> <rdf:Description rdf:about=“http://www.mydomain.de/serie1.html“> <pstcn:titel>Eine Serie</pstcn:titel> </rdf:Description>
RDF / XML [3] Blank nodes with parseType: <pstcn:author parseType=“Literal“> <rdf>Heiko Naumann</rdf> </pstcn:author> <pstcn:author parseType=“Resource“> <pstcn:name>Heiko Naumann</pstcn:name> </pstcn:author> Explicit ID for Nodes with rdf:nodeID=„xxx“
RDF / XML [4] Container: Seq and Bag <rdf:Description rdf:about=“http://www.mydomain.de/artikel1.html“> <pstcn:menu> <rdf:Seq> <rdf:_1 rdf:resource=“http://www.mydomain.de/artikel/sub1.html“ /> <rdf:li rdf:resource=“http://www.mydomain.de/artikel/sub2.html“ /> <rdf:li rdf:resource=“http://www.mydomain.de/artikel/sub3.html“ /> </rdf:Seq> </pstcn:menu> </rdf:Description>
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
RDF Schema [1] • Own vocabulary with Schema • Combination of different Schemas • Use with XML Namespaces (QNames) • Derivates of base classes (W3C) • Consistency
RDF Schema [2] Base classes of W3C: rdfs:Resource rdfs:Class rdfs:Literal rdfs:XMLLiteral rdfs:Container rdfs:ContainerMembershipProperty rdfs:Datatype All classes and properties are derivates
RDF Schema [3] Syntax for derivation: <?xml version=“1.0“?> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:rdfs=http://www.w3.org/2000/01/rdf-schema# xmlns:pstcn=“http://www.mydomain.de/rdf/schema/postcon/“ > <rdfs:Class rdf:about=“http://www.mydomain.de/rdf/schema/postcon/DiaryEntry“> <rdfs:subClassOf rdf:resource=“http://www.w3.org/2000/01/rdf-schema#Resource“ /> </rdfs:Class> <rdf:Property rdf:about=“http://www.mydomain.de/rdf/schema/postcon/autor“> <rdfs:domain rdf:resource=“http://www.mydomain.de/rdf/schema/postcon/DiaryEntry“ /> </rdf:Property> </rdf:RDF> Comment and xml:lang for readability
RDF Schema [4] Determination of valid values: <rdfs:Class rdf:about=“http://www.mydomain.de/rdf/schema/postcon/Review“> <rdfs:subClassOf rdf:resource=“http://www.w3.org/2000/01/rdf-schema#Resource“ /> </rdfs:Class > <rdf:Property rdf:about=“http://www.mydomain.de/rdf/schema/postcon/ueber“> <rdfs:domain rdf:resource=“http://www.mydomain.de/rdf/schema/postcon/Review“ /> <rdfs:range rdf:resource=“http://www.mydomain.de/rdf/schema/postcon/Artikel“ /> </rdf:Property> Rdfs:range defines valid values all subclasses Rdfs:type for single type values
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
PostCon [2] 404 Error – what´s up ? • Did that page exist at all ? • Is page moved or deleted ? • Why moved or deleted ? • Redirection to another source ?
PostCon [3] PostContent-System can provide information: • Did or does page exist ? • Has it been moved ? Where ? • If so, why ? • Is content depricated ? • Is there a substitutional source ? A Schema is required
PostCon [4] • RDF File for a document:rdf_description.doc (.rdf) • RDF Schema:postcon_schema.doc (.rdfs) • So system can give automatic information, why 404 Error has occured.(Evtl. further information on the document)
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
Practical RDF [1] Query language for RDF: • RDQL similar SQL • Implementations in APIs • Supports PHP, Perl, C++, JAVA, .. SELECT ?date WHERE (?resource, <rdf:type>, <pstcn:Movement>), (?resource, <pstcn:movementType>, ?value), (?resource, <dc:date>, ?date) AND (?value eq “Add”) USING pstcn FOR http://www.mydomain.de/postcon/schema/, rdf FOR http:///www.w3.org/1999/02/22-rdf-syntax-ns#, dc FOR <http://purl.org/dc/elements/1.1/>
Practical RDF [2] Tools to modify and work with RDF: • BrownSauce (brownsauce.sourceforge.net) • FOAF (Friend-of-a-friend) O-Matic • Sesame (Java Appl. RDF Repos & Query) • Jena (by HP: Java API Parser & Toolkit) • ARP (Another RDF Parser)
Practical RDF [3] Software using RDF: • Mozilla (embedded, e.g. Bookmarks, History,..) • RDF Gateway (DB & WebServer) based on RDF • Adobe Products:Proprietary format „XMP“ based on RDFEmbedding of RDF into binary dataSupports Photoshop 7, Acrobat 5, Illustrator 10..)Microsoft supports XMP Framework
Inhalt • Semantic Web – Introduction • RDF History & Specifications • RDF Graphs & N-Triples • RDF Serialising (Coding) • RDF Schema • Example: RDF Vocabulary • Practical RDF • Summary
Fazit [1] About RDF: • Needs increase with the WWW • Relevant for parts of the web only • RDF/XML notation as a standard • Usage für Applications, Agents and Embedded Systems (Portability) • Basic concepts easily understandabel
Fazit [2] About seminar: • Difficult research • Little and redundant information found • Difficult to present, mainly embedded usage • Very interesting and innovative • Want to work with RDF more in the future
The End • Tim Berners-Lee: „Though there will still not be a machine which can guarantee to answer arbitrary questions, the power [of RDF] to answer real questions which are the stuff of our daily lives and especially of commerce may be quite remarkable.“ (http://www.w3.org/DesignIssues/Semantic.html)