Thinking XML:使用SKOS丰富模式定义

为了解释XML schemata和实例中的结构的含义,这个Thinking XML专栏的主要主题一直关注语义透明性。我已经介绍了实现语义透明性的自下而上(bottom-up)方法,使用这种方法可以以独立于文档和 schemata 的方式单独定义术语和概念(实际指数据字典),然后就可以广泛地应用这些内容。行业已经为自下而上语义透明性构建了大量计划,这些计划中有一部分具有更好的生命力。在本专栏中,我讨论了 ISO Basic Semantics Register(BSR)、RosettaNet Dictionaries、ebXML Core Components、Universal Data Element Framework(UDEF)、财务服务方面的 ISO 15022 等内容。但是大型的行业计划不提供在大部分 XML 应用程序中驱动模式开发的术语。更常见的情况是您需要定义自己的专门化数据字典。

常用缩写词

DITA:Darwin 信息分类体系结构

URI:统一资源标识符

W3C:万维网联盟

XML:可扩展标记语言

XSL:可扩展样式表语言

XSLT:XSL 转换

架构师越来越意识到仅仅提供数据字典并不足以支持日益丰富的信息集成。在 XML 文档中,需要通过各种相互关系指代人、地点和事件,从一般的关系到更加具体的关系、作用和种类、同义词和反义词。您需要描述与地理位置、关键的时间和日期、策略、业务规则的联系。有时需要将自己的专门化的信息空间扩展到更广阔的行业约定。这些细节使 Semantic Web 技术非常适合支持 XML 开发,因此有必要开始了解最普通的、最简单的语义 Web 技术。Simple Knowledge Organization System (SKOS) 就是这样一种技术,目前正处于工作草案流程中的最后请求阶段,但是已经得到了充分理解、实现和讨论。不幸的是,SKOS 在其最后设计阶段损失了一些简单性,因为其委员会将其绑定到更加复杂的 Web Ontology Language(OWL),如果忽略其中一些比较花俏的装饰,SKOS 仍然非常有用。它至少为关联术语的基本含义关系提供了文字关系,而这是丰富 XML schemata 的良好开头。

从概念到表达

在开发过程中,最好及早地捕获概念。在分析新应用程序或集成现有应用程序期间,您应该记录下主要的概念,尽可能多地保留最初的概念。资源描述框架(Resource Description Framework,RDF)的 Turtle 语法非常有用,它可以使用适合非技术用户查看的格式捕获这些概念。开发人员和业务兴趣之间的紧密结合对于提高使用 XML 组织信息价值十分关键。在本文中,我将使用来自滑板制造商 Fluffy Boards 的一个场景,开发一种格式,使用它捕获称为 Cumulus 的新款滑板的销售信息。清单 1 展示了有关概念的 SKOS 定义的一部分,其中使用了 Turtle 语法。

清单 1. 使用 Turtle 格式表示的滑板销售信息中关键概念的 SKOS 定义

_cnnew1@prefix skos: <http://www.w3.org/2004/02/skos/core#>.
@prefix f: <http://www.fluffyboards.com/vocabulary#>.
f:product
 a skos:Concept;
 skos:prefLabel "product";
 skos:altLabel "merchandise item";
 skos:definition "Item developed for sale by Fluffy Boards.".
f:snowboard
 a skos:Concept;
 skos:prefLabel "snowboard";
 skos:altLabel "deck";
 skos:definition "Deck to be mounted with bindings for riding on snow.";
 skos:broader f:product.
f:endorsement
 a skos:Concept;
 skos:prefLabel "endorsement";
 skos:altLabel "formal thumbs-up";
 skos:definition "Formal statement of approval of the product.";
 skos:broader f:review.
f:review
 a skos:Concept;
 skos:prefLabel "review";
 skos:altLabel "product opinion";
 skos:definition "Statement of opinion of a product.".
f:customer
 a skos:Concept;
 skos:prefLabel "customer";
 skos:definition "Person or group engaged by Fluffy Boards in the purchase process.".

时间: 2024-09-21 23:31:48

Thinking XML:使用SKOS丰富模式定义的相关文章

数据库模式定义语言

数据库模式定义语言DDL(Data Description Language),是用于描述数据库中要存储的现实世界实体的语言.一个数据库模式包含该数据库中所有实体的描述定义.这些定义包括结构定义.操作方法定义等. DDL描述的模式,必须由计算机软件进行编译,转换为便于计算机存储.查询和操纵的格式,完成这个转换工作的程序称为模式编译器. 模式编译器处理模式定义主要产生两种类型的数据:数据字典以及数据类型和结构定义. 数据字典和数据库内部结构信息是创建该模式所对应的数据库的依据,根据这些信息创建每个

Android源码学习之组合模式定义及应用_Android

组合模式定义: Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. 将对象组合成树形结构以表示"部分-整体"的层次结构,使得用户对单个对象和组合对象的使用具有一致性. 如上图所示(截取自<Head First De

Android源码学习之组合模式定义及应用

组合模式定义: Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. 将对象组合成树形结构以表示"部分-整体"的层次结构,使得用户对单个对象和组合对象的使用具有一致性. 如上图所示(截取自<Head First De

描述与注册,发布Web服务(((ok了转完了)))

web|web服务 架构Web Service: 描述与注册,发布Web服务        内容: SOAP消息示例 XML Schema建模 WSDL服务描述 UDDI服务发布 总结 参考资料 作者简介 相关内容: 交互界面,Web服务定义的核心 实战Web服务 基于Web服务的应用.解决方案和开发平台 什么是Web服务? 为什么需要Web服务? WSDL: 描述你的Web服务 UDDI 注册信息的数据模型 柴晓路 (fennivel@uddi-china.org)Chief System A

使用XML Schema定义元素的基本知识

新的 XML Schema 系统即将成为 W3C 推荐标准,目的是为了克服 DTD 的局限性(请参阅侧栏, DTD 的局限性 ),为 XML 文档提供丰富的语法结构.本文展示了模式的灵活性,说明如何使用 XML Schema 系统来定义最基本的 XML 文档构造块--元素. XML Schema 比 DTD 更强大.为了说明 XML Schema 机制的强大功能,下面三个程序清单简要比较了表示元素的不同方式. 清单 1给出了一个 XML 文档段, 清单 2用 DTD 语法声明了这两个元素, 清单

JiBX 1.2,第2部分: 从XML模式到Java代码(二)

为 TimeCard 生成的代码 hrxml 目录中的 Ant build.xml 文件将定义尝试为 TimeCard 模式生成基本代码的 Ant 目标,包括默认生成和几个自定义示例(稍后讨论).样例目录还包含一个测试程序 org.jibx.hrxml.Test.它将使用生成的数据模型类将样例文档解组,然后将文档重新编组并将结果与原始文档相比较.并且样例目录中有一组来自 HR-XML 发行版的测试文档.codegen 目标将使用默认值运行 CodeGen,compile 将编译生成的代码和测试代

JiBX 1.2,第2部分: 从XML模式到Java代码(一)

通过 XML 模式生成更干净的自定义 Java 代码 通过 XML 模式定义生成代码被广泛用于各种类型的 XML 数据交换,包括 Web 服务在内.大多数数据绑定工具都是根据模式严格地组织生成的代码 - 甚至根据可能与应用程序不相关的模式方面.本教程是共两部分的 系列教程 的第二部分,将介绍 JiBX 1.2 如何通过更好地解析模式和消除不必要的类混乱来生成更干净的代码.您还将看到如何自定义生成的代码以更好地满足需求,包括轻松地消除不必要的模式组件的自定义. 开始之前 关于本教程 JiBX 是

JiBX 1.2,第1部分: 从Java代码到XML模式

通过 Java 数据模型与 XML 文档之间的自定义转换提高模式质量 XML 模式定义是许多数据交换类型(包括大多数 Web 服务形式)的基础.但是 XML Schema 是一种十分复杂的标准,并且与处理 Java 代码的工具相比,用于创建和修改模式定义的大多数工具在功能性和易用性方面要逊色一些.您将在本教程 - 共两部分的 系列教程 的第 1 部分 - 中了解到 JiBX 1.2 的新功能,它将允许您从 Java 代码入手并轻松地生成优秀的模式定义来匹配数据结构.然后,无论您是否使用 JiBX

xml-通过定义一个子类在XML类中自定义视图

问题描述 通过定义一个子类在XML类中自定义视图 以下是我自定义的类 <view class=""com.productions.sample.TextCustom""// more.../> 子类 public class TextCustom extends TextView { // Stuff. } 我想实现的是 public final class Custom { public class TextCustom extends TextVie