210 likes | 345 Views
Module 2b: Modeling Information Objects and Relationships. IMT530: Organization of Information Resources Winter, 2008 Michael Crandall. Recap. Information storage and retrieval systems (ISARs) are part of a larger knowledge system
E N D
Module 2b: Modeling Information Objects and Relationships IMT530: Organization of Information Resources Winter, 2008 Michael Crandall
Recap • Information storage and retrieval systems (ISARs) are part of a larger knowledge system • Within an ISAR, two inputs (user needs and entities) are combined to produce an answer for the user’s question • To make that happen, both user’s queries and information entities need to be represented in some way IMT530B Organization of Information Resources
Module 2b Outline • Models • The entity-relationship model for database design • Resource Description Framework for the web • Syntax vs. semantics • Ontologies and their place IMT530B Organization of Information Resources
What is a Model? • A model represents a particular view of reality through a systematic set of rules • As you’ve seen with vocabularies, a representation is only that, not reality • In information systems, we are attempting to represent objects and their relationships • This can become very complex, very quickly • A way to manage this complexity is critical for success • Models allow multiple systems to interact and share information more effectively • Think of the earlier slide showing MSWeb’s search service- outside sources sharing the same model can provide much richer information to the system (and ultimately the users) IMT530B Organization of Information Resources
Sources of Models • Database world • Entity-relationship model • Programming world • Object oriented programming • Information science world • Functional Requirements for Bibliographic Records • Dublin Core • Web world • Resource Description Framework • Ontology Web Language IMT530B Organization of Information Resources
Database Modeling • Chen developed concept of entities and relationships • Entities are “things which can be described” • Relationships are “associations between entities” • These have attributes which are instantiated in values • Allows description of complex spaces through diagrams showing how entities relate to other entities (tuples) • Represented in tables within databases • Essential in relational database modeling IMT530B Organization of Information Resources
Example of E-R Model From Chen, 1985 IMT530B Organization of Information Resources
How RDF Works • RDF is based on the idea that • Things being described (the Subject) • Have properties (the Predicate), • Which have values (the Object) • And that resources can be described by making statements that specify those properties and values (triples) • RDF models statements as nodes and arcs in a graph. In this notation, a statement is represented by: • a node for the subject • a node for the object • an arc for the predicate, directed from the subject node to the object node. IMT530B Organization of Information Resources
How RDF Works • This is done using URIs (Uniform Resource Identifiers) that can be created to refer to anything that needs to be referred to in a statement, including • network-accessible things, such as an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), or a group of other resources. • things that are not network-accessible, such as human beings, corporations, and bound books in a library. • abstract concepts that do not physically exist, such as the concept of a "creator". IMT530B Organization of Information Resources
An Example http://www.example.org/index.html has a creator whose value is John Smith could be represented by an RDF statement having: • a subject http://www.example.org/index.html • a predicate http://purl.org/dc/elements/1.1/creator • and an object http://www.example.org/staffid/85740 IMT530B Organization of Information Resources
Example of RDF Model Figure 1: An RDF Graph Describing Eric Miller IMT530B Organization of Information Resources
RDF in XML <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:contact="http://www.w3.org/2000/10/swap/pim/contact#"> <contact:Person rdf:about="http://www.w3.org/People/EM/contact#me"> <contact:fullName>Eric Miller</contact:fullName> <contact:mailbox rdf:resource="mailto:em@w3.org"/> <contact:personalTitle>Dr.</contact:personalTitle> </contact:Person> </rdf:RDF> IMT530B Organization of Information Resources
Syntax vs. Semantics • Note that models are distinct from the language used to represent them • An RDF model can be written in XML, but is independent of the language • The reason XML becomes important is for machine to machine communication • Allows recognition of structures and semantics in a common way, promoting interoperability at the syntax level • Semantics are controlled by the model • Different models may not communicate even if you’re using XML • So defining and standardizing your semantic model is critical for true interoperability IMT530B Organization of Information Resources
Ontologies • Semantic web is next step to embed semantics in syntax- but you need to model namespaces to do this • Rich namespaces are being modeled through ontologies- an extension of classification theory that includes many more relationship types • Qin and Paling on advantages of ontology • Higher levels of conception of descriptive vocabulary • Deeper semantics for class/subclass and cross-class relationships • Ability to express such concepts and relationships in a description language • Reusability and share-ability of the ontological constructs in heterogeneous systems • OWL (Web Ontology Language) is current favorite tool (http://www.w3.org/TR/owl-features/) IMT530B Organization of Information Resources
Ontology Example • http://www.aiai.ed.ac.uk/project/enterprise/enterprise/ontology.html IMT530B Organization of Information Resources
Questions?? • And then a break…. IMT530B Organization of Information Resources
Exercise 2b • Assemble your group • Spend 45 minutes working through the examples in Exercise 2b • Ask questions and talk!!! • Be sure to hand in completed work at the end of class for credit!!! IMT530B Organization of Information Resources
<!--RDF Model 1--> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:eg="http://example.org/foovocab#" xmlns:foaf="http://xmlns.com/foaf/0.1/"> <foaf:Person rdf:nodeID="p1"> <foaf:name>Alice</foaf:name> <foaf:knows rdf:nodeID="p2"/> <eg:acquaintance rdf:nodeID="p2"/> <eg:archNemesis rdf:nodeID="p2"/> </foaf:Person> <foaf:Person rdf:nodeID="p2"> <foaf:name>Bob</foaf:name> <eg:secretlyStalking rdf:nodeID="p1"/> </foaf:Person> </rdf:RDF> <!--RDF Model 2--> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:eg="http://example.org/foovocab#" xmlns:foaf="http://xmlns.com/foaf/0.1/"> <foaf:Person rdf:nodeID="bob"> <!--Same elements--> <foaf:knows rdf:nodeID="carol"/> <foaf:name>Bob</foaf:name> <foaf:homepage rdf:resource="http://students.washington.edu/parko/" /> <foaf:mbox_sha1sum>241021fb0e6289f92815fc210f9e9137262c252e</foaf:mbox_sha1sum> </foaf:Person> <foaf:Person rdf:nodeID="carol"> <foaf:name>Carol</foaf:name> </foaf:Person> </rdf:RDF> <!--RDF Integrate Model 3--> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:eg="http://example.org/foovocab#" xmlns:foaf="http://xmlns.com/foaf/0.1/"> <foaf:Person rdf:nodeID="p1"> <foaf:name>Alice</foaf:name> <foaf:knows rdf:nodeID="p2"/> <eg:acquaintance rdf:nodeID="p2"/> <eg:archNemesis rdf:nodeID="p2"/> </foaf:Person> <foaf:Person rdf:nodeID="p2"> <foaf:name>Bob</foaf:name> <foaf:knows rdf:nodeID="carol"/> <foaf:homepage rdf:resource="http://students.washington.edu/parko/" /> <foaf:mbox_sha1sum>241021fb0e6289f92815fc210f9e9137262c252e</foaf:mbox_sha1sum> <eg:secretlyStalking rdf:nodeID="p1"/> </foaf:Person> <foaf:Person rdf:nodeID="carol"> <foaf:name>Carol</foaf:name> </foaf:Person> </rdf:RDF> Example of Integration Contributed by Oknam Park IMT530B Organization of Information Resources
Modeling Wrapup • One model will not fit all needs • More and more, integration of web models with database and programming models is becoming important • Each will provide a different view of the world you are trying to manage • Finding linkages for interoperability is the big challenge • We’ll look next week at some current attempts in this area • Think about how you would approach these problems and see how it fits what you read IMT530B Organization of Information Resources
Next Week • We’ll hear from a guest speaker about commercial use of ontologies • We’ll dive into metadata schemas and schemes and the world of standards • Remember to read next week’s assignments BEFORE class • Have a great weekend!! IMT530B Organization of Information Resources