background image

PHP 

 

构建语义 Web CRUD 操作

创建、读、更新和删除(Create/Read/Update/Delete,CRUD)操作是最基本的数

据库操作,但是它们也是最重要的操作。CRUD 操作通常是使用关系数据库系统中的结
构化查询语言(Structured Query Language,SQL

 

)完成的。随着 Web 变得更加具

 

有面向数据特性,因此需要从基于 SQL   

的 CRUD 

 

操作转移到基于语义 Web   

的 CRUD 

 

操作。了解如何使用 PHP 

 

通过基于语义的 Web 

 

执行 CRUD 操作。

  常用缩写词
  API — 应用程序编程接口(Application Programming Interface)
  CRUD — 创建/读/更新/删除(Create/Read/Update/Delete)
  HTTP — 超文本传输协议(Hypertext Transfer Protocol)
  MVC — 

模式 视图 控制器(Model-View-Controller)

  OOP — 面向对象的编程(Object-Oriented Programming)
  RDF — 资源描述框架(Resource Description Framework)
  SPARQL — 

 

简单协议和 RDF 查询语言(Simple Protocol and RDF Query 

Language)

  SQL — 结构化查询语言(Structured Query Language)
  UI — 用户界面(User interface)
  W3C — 万维网联盟(World Wide Web Consortium)

 

  在开发 Web 

 

应用程序时,为逻辑层和 UI 层创建放置服务器端代码的数据库结

构是一种标准实践。要连接到数据库,服务器端代码需要执行一些基本的创建、更新、删除

 — 

 — 

 

最重要的

读取记录等操作。由于 Web 应用程序的后台数据库通常都是关系数据

 

库,因此这些 CRUD 

 

操作都是使用众所周知的 SQL 

 

语言执行的。但是,随着 Web 开发

越来越多地采用面向对象的编程(OOP),模型也随之发生改变。

资源描述框架(Resource Description Framework,RDF)是描述对象同时保留

 

数据含义的理想方法。简单协议和 RDF 查询语言(Simple Protocol and RDF Query 
Language,SPARQL — 

 “

发音为 sparkle”)是通常用于针对该数据进行查询的语言,

 

因为它在语句构成上匹配 RDF 本身的结构。RDF   

和 SPARQL 

 

 

都是所谓 语义 Web 栈

(semantic Web stack)中的技术。

 

  要彻底地应用语义 Web 

 

理念,您可以使用 SPARQL 

 

将传统的 Web 开发技术

 

应用到 RDF 

数据中。本文将展示如何使用简化的模式 视图 控制器(Model-View-

Controller,MVC)设计模型、PHP 

 

服务器端脚本语言和 SPARQL 

 

连接到 RDF — 与使

 

用关系数据库系统中的 SQL 相反。

  SQL   

和 SPARQL CRUD 操作

  先决条件

 

  本文假定您基本了解 SQL、PHP   

和 Web 

 

应用程序开发。了解语义 Web 也十分

 

有利。要对基于语义 Web 

 

的数据运行 create、update   

和 delete 命令,需要具有支持 

SPARQL/Update 

 

规范的语义 Web 数据库。

 

  在使用 SQL   

和 SPARQL 

 

进行开发时,需要查看一下 CRUD 操作之间的异同。

 

清单 1 

 

显示了 read 

 

操作的 SQL 代码。

SELECT realname, dob, locationFROM UserTable WHERE realname = "John Smith";

 

将这段基于 SQL 

 

的代码与清单 2 

 

中所示的基于 SPARQL 的代码相比较。采用这两个