Skip to content

Semantic Web Programming

Best in textbook rentals since 2012!

ISBN-10: 047041801X

ISBN-13: 9780470418017

Edition: 2009

Authors: John Hebeler, Matthew Fisher, Ryan Blace, Andrew Perez-Lopez, Mike Dean

List price: $45.00
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

"Semantic Web Programming" takes the semantic web directly and boldly into solving practical, real-world problems. Hands-on code examples drive the understanding of this new powerful technology that can unify and fully leverage the growing sea of data, information, and services available on the Internet. As the code examples build, the reader explores the many technologies that form the semantic web including the knowledge representations such as Resource Description Framework (RDF), Web Ontology Language (OWL), and Semantic Web Rule Language (SWRL), the programming interfaces including Jena and Sesame, and an integrated view of the tools to build and support semantic web applications. The…    
Customers also bought

Book details

List price: $45.00
Copyright year: 2009
Publisher: John Wiley & Sons, Incorporated
Publication date: 4/13/2009
Binding: Paperback
Pages: 656
Size: 7.40" wide x 9.00" long x 1.50" tall
Weight: 2.090
Language: English

John Hebeler has more than two decades of large-scale software development experience. Matt Fisher has more than fifteen years in software and systems development. Ryan Blace is a Semantic Web developer and has worked on multiple large-scale Semantic Web-based knowledge management systems. Andrew Perez-Lopez is a software developer with several years of experience with Semantic Web information systems.

Gary Groth�is the co-founder of�The Comics Journal�and Fantagraphics Books. He lives in Seattle.Mike Dean lives in Seattle and is an Editor at Fantagraphics.

Foreword
Introduction
Introducing Semantic Web Programming
Preparing to Program a Semantic Web of Data
Defining the Semantic Web
Identifying the Major Programming Components
Determining Impacts on Programming
Establishing aWeb Data-Centric Perspective
Expressing Semantic Data
Sharing Data
Making Data Dynamic and Flexible
Avoiding the Roadblocks, Myths, and Hype
Semantic Web Roadblocks
Semantic Web Myths
Semantic Web Hype
Understanding SemanticWeb Origins
Exploring SemanticWeb Examples
Semantic Wikis (semantic-mediawiki.org)
Twine (www.twine.com)
The FOAF Project (www.foaf-project.org)
RDFa and Microformats
Semantic Query Endpoint (dbpedia.org/sparql)
Semantic Search (www.trueknowledge.com)
Summary and Onward
Notes
Hello Semantic Web World
Setting Up Your Semantic Web Development Environment
Programming the Hello Semantic WebWorld Application
Summary
Foundations of Semantic Web Programming
Modeling Information
Modeling Information in Software
Sharing Information Syntax and Semantics
Serialized Objects
Relational Databases
Extensible Markup Language (XML)
Metadata and Data in Information Sharing
The SemanticWeb Information Model The Resource Description Framework (RDF)
Nodes Resources and Literals
Edges Predicates
Exchanging Information with RDF
Statements as Points
RDF Serializations
RDF/XML
Terse RDF Triple Language (Turtle)
N-Triples
Quick Hack
More RDF
Blank Nodes
Reification
RDF Organizational Constructs
Summary
Incorporating Semantics
Semantics on the Web
Motivating Factors
Understanding the World WideWeb
Knowledge Domain Integration
Expressing Semantics in RDF
Vocabularies, Taxonomies, and Ontologies
A Vocabulary Language for RDF
An Ontology Language for the Web
Introduction to Ontologies
Distributed Knowledge
Open World Assumption
No Unique Names Assumption
Overview of Ontology Elements
Ontology Header
Classes and Individuals
Properties
Annotations
Data types
Elements of an Ontology
OWL 2 Typing
Ontology Header
Annotations
Basic Classification
Classes and Individuals
Instance versus Subclass
Defining and Using Properties
Property Domain and Range
Describing Properties
Top and Bottom Properties
Inverse Properties
Disjoint Properties
Property Chains
Symmetric, Reflexive, and Transitive Properties
Functional and Inverse Functional Properties
Keys
Datatypes
Data type Restrictions
Defining Datatypes in Terms of Other Datatypes
Negative Property Assertions
Property Restrictions
Value Restrictions
Cardinality Restrictions
Qualified Cardinality Restrictions
Advanced Class Description
Enumerating Class Membership
Set Operators
Disjoint Classes
Equivalence in OWL
Equivalence among Individuals
Equivalence among Classes and Properties
Summary
Modeling Knowledge in the Real World
Exploring the Components of the SemanticWeb
Semantic Web Frameworks
Storing and Retrieving RDF
RDF Store Implementations
Retrieving Information in a Knowledgebase
Realizing the Semantics of OWL
Understanding Forward Chaining Inference
Understanding Backward Chaining Inference
Choosing the Right Inference Method
Common Frameworks and Components
RDF Store Implementations
Retrieval Components
Reasoning Engines
Knowledgebase Performance
Exploring the Profiles of OWL
OWL Full and OWL DL
The Profiles of OWL
OWL EL
OWL QL
OWL RL
Demonstrating OWL Inference
The Ontology
The Example Application
The Results
Performing No Inference
Performing RDFS Inference
Performing OWL Inference
Working with Ontologies
Decoupling the Knowledge Model from the Application
Sharing across Domain and Application Boundaries
What Is a Foundational Ontology?
Common Foundational Ontologies
BFO
Cyc and OpenCyc
DOLCE
SUMO
Dublin Core Metadata Initiative
FOAF
GeoRSS and OWL-Time
Finding Ontologies to Reuse or Extend
Choosing the Right Foundational Ontologies
Summary
Discovering Information
Navigating the SemanticWeb
Searching the Semantic Web
Querying the Semantic Web
Quickstart with SPARQL
Four Foundational Query Forms
SELECT Essentials
RDF Datasets, FROM and FROM NAMED
Query Modifiers
Distinct
Reduced
ORder By
Data Streaming with OFFSET and LIMIT
Flexible Querying with Filter And Optional
Filter
Optional
Union
Construct Essentials
Describe Essentials
Ask Essentials
SPARQL Entailment
Unsupported Functionality
Data Modification
Subqueries
Aggregation
Summary
Adding Rules
What Are Rules?
Reasons for Rules
No Support for Property Composition
Use of Built-ins
Ontological Mediation
Limiting Assumptions
Rule Languages
SWRL Essentials
The Abstract Syntax
The XML Concrete Syntax
var
imp
rlab
body
head
classAtom
data range Atom
individual Property Atom
data valued Property Atom
same Individual Atom
different Individuals Atom
builtin Atom
The RDF Concrete Syntax
Built-ins
Examples
DL-Safe Rules
Ontological Mediation
Mapping Friends without Upsetting Any of Them
The Power of Rules
Jena Rules
Rule Interchange Format
Delving into the Details
The Future of RIF
Summary
Building Semantic Web Applications
Applying a Programming Framework
Framing the Semantic Web
The Jena SemanticWeb Framework
Defining Jena Programming Concepts
Programming with Jena
Establishing the Jena Development Environment
Establishing the Knowledgebase Setting Up the Model
Populating the Model with Semantic Web Data
Combining SemanticWeb Data
Interrogating Semantic Web Data
Reasoning across Semantic Web Data
Exporting SemanticWeb Data
Deallocating Semantic Web Data Resources
Managing Semantic Web Data
Getting Information Regarding Your Semantic Web Data
Generating Events Based on SemanticWeb Data
Dealing with Concurrency and Your Semantic Web Data
Customizing the Jena Framework
Serializing SemanticWeb Data
Common App Overview FriendTracker
Summary
Combining Information
Combining Information
Representing Information
Translating between Representations
Addressing the Challenges of Translation
Maintaining Fidelity
Tracking Provenance Information
Reversing the Process
Handling Varying Data
Managing Data Volume
Introducing the FriendTracker Data Sources
Facebook XML Web Service
Jabber Java Client
Upcoming.org XML Web Service
WordPress Relational Database
Exposing XML-Based Web Services as RDF
Introducing the Weather.gov XML Feed
Exposing XML Using XSL Transformations
Traversing XML Documents with XPath
Applying XSLT to a Simple Example
Processing XML and XSLT Programmatically
Applying XSLT to the Facebook Data Source
Weighing the Benefits and the Costs of XSLT
Exposing XML Using XML Bindings and Velocity
Generating Java Bindings for XML Data
Unmarshalling XML Data into Java
Introducing the Velocity Template Engine
Generating RDF with Velocity
Weighing the Benefits and the Costs
Exposing Relational Databases as RDF
Exposing a WordPress Blog Using D2RQ
Creating D2RQ Mappings for theWordPress Database
Wrapping the D2RQ Instance in a Jena Model
Querying the D2RQ Exposed WordPress Database
Weighing the Benefits and the Costs of D2RQ
Exposing Other Sources of Data
Exposing Jabber with a Custom Streaming RDF Writer
Exposing Java Objects Using Reflection
Applying the RDF Generator to the Weather.gov XML Feed
Applying the RDF Generator to the Upcoming.org XML Feed
Summary
Aligning Information
Data Source, Domain, and Application Ontologies
Aligning Ontologies
Ontology Constructs
Translation via Rules
Explicit Translation
Ad Hoc Approaches to Translation
FriendTracker
Aligning Ontologies with OWL and SWRL
Aligning Ontologies with XSLT
Aligning Ontologies with Code
Aligning Simple Ontologies with RDFS
Record Linkage
Summary
Sharing Information
Microformats
eRDF
RDFa
Supported Attributes
xmlns
rel
rev
href
src
about
property
resource
datatype
typeof
Blank Nodes
Language Support
Tools and Frameworks
RDF Transformational Tools
SPARQL Endpoints
Joseki Installation and Operation
xOperator
Installation and Operation
Example Query
FriendTracker in RDFa
Summary
Expanding Semantic Web Programming
Developing and Using Semantic Services
Background
Discovery
Invocation
Negotiation
Error Handling
Monitoring
Composition
Implementing Semantic Services
Semantic Markup forWeb Services
ServiceProfile
ServiceModel
ServiceGrounding
Web Service Modeling Ontology
Semantic Annotations for WSDL
SAWSDL Example
SAWSDL Tools
Summary
Managing Space and Time
Space and Time in Software
Spatial Information
Temporal Information
Representing Spatiotemporal Data on the SemanticWeb
Spatial and Temporal Software with Jena
Working with Spatial Data
Example Spatial Queries
Framing the Problem
Approach and Rationale
Components
Example Transaction Time-Bounded Queries
Framing the Problem
Approach and Rationale
Components
Summary
Notes
Semantic Web Patterns and Best Practices
Aggregating Disparate Data Sources
Exposing Data Sources as RDF
Bringing Data into the Domain Knowledge Model
Storing Information in the Knowledgebase
Initiating the Flow of Data
Annotating Unstructured Data
Annotation Management
Ontology Management
Unstructured Data Sources and the Client Application
Coordinating Semantic Services
Applying SemanticWeb Best Practices
Creating URIs
Making URIs Unique
Making URIs Consistent
Making URIs Resolvable
Specifying Units of Measurement
Unit-Specific Properties and Datatypes
Statement Reification
Value Containers
Representing N-ary Relationships
Managing Bad Data
Summary
Moving Forward
Advancing Ontologies
Ontology Repositories and Registries
Linked Data
Versioning
Ontology Metrics
Advancing Integration
Semantic Pipes
Distributed Queries
Alignment
Advancing Reasoning
Rule Interchange Format (RIF)
Probabilistic Reasoning
Trust Proof Markup Language
LarKC The Large Knowledge Collider
Advancing Visualization
Summary
RDF
The OWL Web Ontology Language
SWRL
SPARQL
Jena Reference Guide
Installation Reference Guide
Index