+353-1-416-8900REST OF WORLD
+44-20-3973-8888REST OF WORLD
1-917-300-0470EAST COAST U.S
1-800-526-8630U.S. (TOLL FREE)

PRINTER FRIENDLY

Semantic Web Programming. Edition No. 1

  • ID: 837161
  • Book
  • April 2009
  • 652 Pages
  • John Wiley and Sons Ltd
The next major advance in the Web-Web 3.0-will be built on semantic Web technologies, which will allow data to be shared and reused across application, enterprise, and community boundaries. Written by a team of highly experienced Web developers, this book explains examines how this powerful new technology can unify and fully leverage the ever-growing data, information, and services that are available on the Internet. Helpful examples demonstrate how to use the semantic Web to solve practical, real-world problems while you take a look at the set of design principles, collaborative working groups, and technologies that form the semantic Web. The companion Web site features full code, as well as a reference section, a FAQ section, a discussion forum, and a semantic blog.
Note: Product cover images may vary from those shown

Foreword xxiii

Introduction xxv

Part One Introducing Semantic Web Programming 1

Chapter 1 Preparing to Program a Semantic Web of Data 3

Defining the Semantic Web 4

Identifying the Major Programming Components 10

Determining Impacts on Programming 13

Establishing a Web Data–Centric Perspective 13

Expressing Semantic Data 14

Sharing Data 16

Making Data Dynamic and Flexible 18

Avoiding the Roadblocks, Myths, and Hype 19

Semantic Web Roadblocks 19

Semantic Web Myths 21

Semantic Web Hype 22

Understanding Semantic Web Origins 23

Exploring Semantic Web Examples 26

Semantic Wikis (semantic-mediawiki.org XML Web Service 308

WordPress Relational Database 308

Exposing XML-Based Web Services as RDF 309

Introducing the Weather.gov XML Feed 310

Exposing XML Using XSL Transformations 311

Traversing XML Documents with XPath 313

Applying XSLT to a Simple Example 315

Processing XML and XSLT Programmatically 319

Applying XSLT to the Facebook Data Source 322

Weighing the Benefits and the Costs of XSLT 326

Exposing XML Using XML Bindings and Velocity 328

Generating Java Bindings for XML Data 329

Unmarshalling XML Data into Java 331

Introducing the Velocity Template Engine 333

Generating RDF with Velocity 336

Weighing the Benefits and the Costs 336

Exposing Relational Databases as RDF 337

Exposing a WordPress Blog Using D2RQ 338

Creating D2RQ Mappings for the WordPress Database 339

Wrapping the D2RQ Instance in a Jena Model 341

Querying the D2RQ Exposed WordPress Database 342

Weighing the Benefits and the Costs of D2RQ 345

Exposing Other Sources of Data 346

Exposing Jabber with a Custom Streaming RDF Writer 346

Exposing Java Objects Using Reflection 352

Applying the RDF Generator to the Weather.gov XML Feed 356

Applying the RDF Generator to the Upcoming.org XML Feed 358

Summary 359

Chapter 10 Aligning Information 361

Data Source, Domain, and Application Ontologies 361

Aligning Ontologies 362

Ontology Constructs 363

Translation via Rules 365

Explicit Translation 365

Ad Hoc Approaches to Translation 366

FriendTracker 366

Aligning Ontologies with OWL and SWRL 372

Aligning Ontologies with XSLT 376

Aligning Ontologies with Code 381

Aligning Simple Ontologies with RDFS 382

Record Linkage 385

Summary 388

Chapter 11 Sharing Information 389

Microformats 390

eRDF 392

RDFa 395

Supported Attributes 396

xmlns 396

rel 396

rev 398

content 398

href 399

src 399

about 399

property 399

resource 400

datatype 401

typeof 401

Blank Nodes 402

Language Support 403

Tools and Frameworks 404

RDF Transformational Tools 404

SPARQL Endpoints 404

Joseki Installation and Operation 405

xOperator 408

Installation and Operation 409

Example Query 410

FriendTracker in RDFa 411

Summary 417

Part Four Expanding Semantic Web Programming 419

Chapter 12 Developing and Using Semantic Services 421

Background 422

Discovery 424

Invocation 424

Negotiation 425

Error Handling 425

Monitoring 425

Composition 425

Implementing Semantic Services 426

Semantic Markup for Web Services 427

ServiceProfile 428

ServiceModel 428

ServiceGrounding 428

Web Service Modeling Ontology 429

Semantic Annotations for WSDL 432

SAWSDL Example 433

SAWSDL Tools 434

Summary 435

Chapter 13 Managing Space and Time 437

Space and Time in Software 437

Spatial Information 438

Temporal Information 440

Representing Spatiotemporal Data on the SemanticWeb 441

Spatial and Temporal Software with Jena 450

Working with Spatial Data 452

Example: Spatial Queries 453

Framing the Problem 453

Approach and Rationale 454

Components 454

Example: Transaction Time–Bounded Queries 461

Framing the Problem 461

Approach and Rationale 462

Components 462

Summary 465

Notes 465

Chapter 14 Semantic Web Patterns and Best Practices 467

Aggregating Disparate Data Sources 468

Exposing Data Sources as RDF 469

Bringing Data into the Domain Knowledge Model 470

Storing Information in the Knowledgebase 472

Initiating the Flow of Data 472

Annotating Unstructured Data 472

Annotation Management 474

Ontology Management 475

Unstructured Data Sources and the Client Application 476

Coordinating Semantic Services 478

Applying SemanticWeb Best Practices 480

Creating URIs 480

Making URIs Unique 480

Making URIs Consistent 481

Making URIs Resolvable 483

Specifying Units of Measurement 483

Unit-Specific Properties and Datatypes 484

Statement Reification 485

Value Containers 485

Representing N-ary Relationships 486

Managing Bad Data 487

Summary 487

Chapter 15 Moving Forward 489

Advancing Ontologies 491

Ontology Repositories and Registries 491

Linked Data 492

Versioning 493

Ontology Metrics 495

Advancing Integration 497

Semantic Pipes 497

Distributed Queries 498

Alignment 500

Advancing Reasoning 506

Rule Interchange Format (RIF) 506

Probabilistic Reasoning 507

Trust: Proof Markup Language 510

LarKC: The Large Knowledge Collider 512

Advancing Visualization 513

Summary 516

Appendix A RDF 519

Appendix B The OWL Web Ontology Language 525

Appendix C SWRL 533

Appendix D SPARQL 555

Appendix E Jena Reference Guide 567

Appendix F Installation Reference Guide 577

Index 585

Note: Product cover images may vary from those shown
Matthew Fisher
Ryan Blace
John Hebeler
Andrew Perez-Lopez
Note: Product cover images may vary from those shown
Adroll
adroll