SDO For Java 规范(四)——DataGraph

数据图(DataGraph

数据图(DataGraph)是拥有一个更改摘要(ChangeSummary)的数据对象图的可选信封。

为了获取仅包含数据对象的数据图的同样的功能,数据对象可以使用SDO 数据图XSD进行定义。

如更改摘要章节所述,一个更改摘要可以直接使用在数据对象身上。

数据图包含以下方法:

  • 返回一个根数据对象;
  • 如果数据图内没有根数据对象,创建一个根数据对象;
  • 返回更改摘要;
  • 基于 uri 和类似于 TypeHelper 的名字查找类型;

数据图接口

public interface DataGraph extends Serializable

{

DataObject getRootObject();

DataObject createRootObject(String namespaceURI, String typeName);

DataObject createRootObject(Type type);

ChangeSummary getChangeSummary();

Type getType(String uri, String typeName);

}

创建数据图

数据图由DAS创建,DAS或者返回一个空数据图,或者返回一个包含数据对象的数据图。空数据图能够使用createRootObject()方法创建该数据图的根对象。如果在创建根数据对象时,数据图已经存在一个根数据对象,将会抛出一个IllegalStateException异常。

DAS也负责创建供数据对象和数据图使用的元数据(数据模型)。例如,一个面向XML数据的DAS能够基于XSD建立该XML文件的模型。

修改数据图

为了修改一个数据图,程序需要使用getRootObject()方法访问根数据对象。基于对根数据对象的包含内容引用的递归遍历,该树形结构内的其它数据对象都能够被访问到。

访问类型

使用getType(String uri, String typeName)方法或通过TypeHelper可以访问类型(Type)。这将返回一个含有恰当的URI和名字的类型(Type)。对于getType()方法或者所有拥有URI参数的方法而言,URI是一个如同targetNamespace这样的逻辑名。

DataGraph TypeHelper DataObject的实现负责访问包含所请求的元数据的物理资源。物理资源可能是一个本地拷贝或者是一个网络资源。

基于实现所独有的配置文件,可以提供从逻辑到物理映射的必须配置信息。

如果元数据不可用,那么将会产生一个实现所独有的异常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值