书签 分享 收藏 举报 版权申诉 / 39

基于数据质量的主题数据集多层分面过滤方法与系统.pdf

  • 上传人:1520****312
  • 文档编号:6024587
  • 上传时间:2019-04-03
  • 格式:PDF
  • 页数:39
  • 大小:3.33MB
  • 摘要
    申请专利号:

    CN201610738482.X

    申请日:

    2016.08.26

    公开号:

    CN106354799A

    公开日:

    2017.01.25

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    实质审查的生效IPC(主分类):G06F 17/30申请日:20160826|||公开

    IPC分类号:

    G06F17/30; G06Q30/06(2012.01)I

    主分类号:

    G06F17/30

    申请人:

    河海大学

    发明人:

    许卓明; 夏文泽

    地址:

    211100 江苏省南京市江宁开发区佛城西路8号

    优先权:

    专利代理机构:

    南京苏高专利商标事务所(普通合伙) 32204

    代理人:

    肖明芳

    PDF完整版下载: PDF下载
    内容摘要

    本发明提供一种基于数据质量的主题数据集多层分面过滤方法与系统,该方法包括以下步骤:根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次;根据数据质量分面分类层次和用户搜索数据目录所产生的主题数据集物化出一个特定主题的数据质量分面分类层次,并将其树形结构在人机交互界面中进行可视化;根据用户在上述树形结构中选择的数据质量分面对主题数据集进行基于数据质量的过滤,并按用户选定的方式对过滤结果进行排序;在人机交互界面中输出过滤并排序后的主题数据集信息。本发明克服了现有主题数据集过滤技术忽视数据质量的弊端,用多层分面过滤来方便用户筛选符合数据质量要求的主题数据集,代表数据目录门户技术发展趋势。

    权利要求书

    1.一种基于数据质量的主题数据集多层分面过滤方法,包括下列步骤:
    S1:根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次;
    S2:根据数据质量分面分类层次和用户搜索数据目录所产生的主题数据集物化出一个
    特定主题的数据质量分面分类层次,并将其树形结构在人机交互界面中进行可视化;
    S3:根据用户在上述树形结构中选择的数据质量分面对主题数据集进行基于数据质量
    的过滤,并按用户选定的方式对过滤结果进行排序;
    S4:在人机交互界面中输出过滤并排序后的主题数据集信息。
    2.根据权利要求1所述的方法,其特征在于,所述步骤S1进一步包括下列步骤:
    S11:根据数据目录中数据集质量元数据构建一个数据质量分面分类层次H;
    S12:持久存储已构建的数据质量分面分类层次H。
    3.根据权利要求2所述的方法,其特征在于,所述步骤S11进一步包括下列步骤:
    S111:定义一个与三层数据质量层次模型相对应的数据质量分面分类层次H,包括:
    该数据质量分面分类层次是一种具有依次包含关系的三层结构:第一层是质量类别
    层,其中的每个质量类别有一个名称,并通过指针来指向质量维层中若干个质量维以表明
    该质量类别包含这些质量维的关系,第二层是质量维层,其中的每个质量维有一个名称,并
    通过指针来指向质量度量指标层中若干个质量度量指标以表明该质量维包含这些质量度
    量指标的关系,第三层是质量度量指标层,其中的每个质量度量指标有一个名称,在数据目
    录门户的实际应用中,一个质量度量指标可用于对若干个数据集进行质量度量,一个数据
    集可在若干个质量度量指标上有质量度量,并且,一个数据集在某个质量度量指标上可有
    若干个质量度量,每个质量度量以质量度量名-值对的形式存在;
    在上述数据质量分面分类层次中,每个数据质量分面,即:每个具体的质量类别、质量
    维或质量度量指标,都将按以下方式来记录拥有与其相关的质量度量的所有数据集的标识
    信息:每个具体的质量度量指标都将记录在该质量度量指标上有质量度量的所有数据集的
    标识符,每个具体的质量维都将记录在它包含的全部质量度量指标上有质量度量的所有数
    据集的标识符,并将这样的数据集简称为“在该质量维下有质量度量的数据集”,类似地,每
    个具体的质量类别都将记录在它包含的全部质量维所包含的全部质量度量指标上有质量
    度量的所有数据集的标识符,并将这样的数据集简称为“在该质量类别下有质量度量的数
    据集”;
    进一步地,上述数据质量分面分类层次H的数据结构用数学符号描述如下:
    一个数据质量分面分类层次是一个三元组H=(C,D,M),其中,C是质量类别的线性表,D
    是质量维的线性表的集合,M是质量度量指标的线性表的集合;
    质量类别的线性表C=(C1,C2,…,Cl),其中,l为该线性表的长度,每个元素Ci,i=1,
    2,…,l是一个质量类别,包含三个数据项:质量类别的名称Ci.Name,在该质量类别下有质
    量度量的数据集标识符的线性表Ci.ListOfDatasetIDs,指向该质量类别所包含的质量维
    的线性表Di的指针Ci.Pointer;
    Ci所指向的质量维的线性表Di=(Di1,Di2,…,Dim),其中,m为该线性表的长度,每个元素
    Dij,j=1,2,…,m是一个质量维,包含三个数据项:质量维的名称Dij.Name,在该质量维下有
    质量度量的数据集标识符的线性表Dij.ListOfDatasetIDs,指向该质量维所包含的质量度
    量指标的线性表Mij的指针Dij.Pointer;
    Dij所指向的质量度量指标的线性表Mij=(Mij1,Mij2,…,Mijn),其中,n为该线性表的长
    度,每个元素Mijk,k=1,2,…,n是一个质量度量指标,包含两个数据项:质量度量指标的名
    称Mijk.Name,在该质量度量指标上有质量度量的数据集标识符的线性表
    Mijk.ListOfDatasetIDs,这些数据集在该质量度量指标上可有若干个质量度量,每个质量
    度量以质量度量名-值对的形式存在;
    S112:从数据目录中获取所有数据集的质量元数据,将其中的质量类别、质量维、质量
    度量指标的名称及相互包含关系相应地赋值至上述数据质量分面分类层次H,各层中全部
    的数据集标识符的线性表均暂置为空。
    4.根据权利要求1至3任一项所述的方法,其特征在于,所述步骤S2进一步包括下列步
    骤:
    S21:从数据目录门户的数据集搜索引擎获取用户搜索数据目录所搜索到的主题数据
    集,若搜索结果为空则终止处理,否则据此形成一个主题数据集标识符的线性表
    TopicalDatasetIDs;
    S22:读取已构建并存储的数据质量分面分类层次H;
    S23:根据主题数据集标识符的线性表TopicalDatasetIDs来物化已读取的数据质量分
    面分类层次H,以产生一个特定主题的数据质量分面分类层次
    S24:将特定主题的数据质量分面分类层次的树形结构在人机交互界面中进行可视
    化。
    5.根据权利要求4所述的方法,其特征在于,所述步骤S23进一步包括下列步骤:
    S231:从数据目录中获取主题数据集标识符的线性表TopicalDatasetIDs中所有数据
    集的质量元数据;
    S232:根据所获取的质量元数据来物化数据质量分面分类层次H的质量度量指标层,以
    产生特定主题的数据质量分面分类层次的质量度量指标层,包括:
    首先,对数据质量分面分类层次H中的每个质量度量指标Mijk,若质量元数据中使用了
    该质量度量指标进行质量度量,则将其作为特定主题的数据质量分面分类层次中的一个
    质量度量指标然后,对中每一个这样的质量度量指标从主题数据集标识符的
    线性表TopicalDatasetIDs中找出在该质量度量指标上有质量度量的所有主题数据集,将
    这些主题数据集的标识符赋值给在该质量度量指标上有质量度量的主题数据集标识符的
    线性表并将该线性表中的每个主题数据集在该质量度量指标上的所
    有质量度量的名-值对存储于相应的集合其中1≤t≤线
    性表的长度;
    S233:根据特定主题的数据质量分面分类层次的质量度量指标层来进一步物化数据
    质量分面分类层次H的质量维层,以产生特定主题的数据质量分面分类层次的质量维层,
    包括:
    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量度量指标来确定
    数据质量分面分类层次H中包含这些质量度量指标的各个质量维,将它们作为特定主题的
    数据质量分面分类层次中的各个质量维,然后,对中每个这样的质量维通过指针
    所指向的线性表来找出该质量维所包含的所有质量度量指标,并将全部x个
    在这些质量度量指标上有质量度量的主题数据集标识符的线性表Mijk.ListOfDatasetIDs,
    1≤k≤x进行去除重复元素的合并后,赋值给在该质量维下有质量度量的主题数据集标识
    符的线性表即:
    <mrow> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> <mn>1</mn> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <mo>...</mo> <mo>&cup;</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> <mi>x</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>;</mo> </mrow>
    S234:根据特定主题的数据质量分面分类层次的质量维层来进一步物化数据质量分
    面分类层次H的质量类别层,以产生特定主题的数据质量分面分类层次的质量类别层,包
    括:
    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量维来确定数据质
    量分面分类层次H中包含这些质量维的各个质量类别,将它们作为特定主题的数据质量分
    面分类层次中的各个质量类别,然后,对中每个这样的质量类别通过指针
    所指向的线性表来找出该质量类别所包含的所有质量维,并将全部y个在这些
    质量维下有质量度量的主题数据集标识符的线性表1≤j≤y进行去除
    重复元素的合并后,赋值给在该质量类别下有质量度量的主题数据集标识符的线性表
    即:
    <mrow> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mn>1</mn> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <mo>...</mo> <mo>&cup;</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>y</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>.</mo> </mrow>
    6.根据权利要求5所述的方法,其特征在于,所述步骤S3进一步包括下列步骤:
    S31:根据用户在人机交互界中的上述树形结构中选择的一个用于过滤的数据质量分
    面,产生过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs,包括:
    若用户在上述树形结构中选择的数据质量分面是一个质量类别则将在该质量类别
    下有质量度量的主题数据集标识符的线性表中的全部主题数据集标识
    符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;
    若用户在上述树形结构中选择的数据质量分面是一个质量维则将在该质量维下有
    质量度量的主题数据集标识符的线性表中的全部主题数据集标识符赋
    值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;
    若用户在上述树形结构中选择的数据质量分面是一个质量度量指标则将在该质
    量度量指标上有质量度量的主题数据集标识符的线性表中的全部主
    题数据集标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;
    S32:按用户在人机交互界中选定的排序方式对过滤后主题数据集标识符的线性表
    FilteredTopicalDatasetIDs中的主题数据集进行排序,产生过滤并排序后主题数据集标
    识符的线性表RankedFilteredTopicalDatasetIDs,包括:
    若用户选择的数据质量分面是一个质量度量指标则在人机交互界中向用户提供
    对过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs中的主题数据集按质量
    度量值进行排序的选项:让用户选择在该质量度量指标上的若干个质量度量中使用哪个质
    量度量作为排序依据,并选择升序或降序的排序方式,排序时,数值型质量度量值直接比较
    大小,布尔型质量度量值的比较方式为假小于真,即false<true;
    若用户选择的数据质量分面是一个质量维或质量类别则让用户在数据目录门户
    现有的搜索结果排序方式中选择一种方式对过滤后主题数据集标识符的线性表
    FilteredTopicalDatasetIDs中的数据集进行排序;
    将上述两种情况之一的排序结果赋值给过滤并排序后主题数据集标识符的线性表
    RankedFilteredTopicalDatasetIDs。
    7.根据权利要求6所述的方法,其特征在于,所述步骤S4进一步包括下列步骤:
    S41:从数据目录中获取过滤并排序后主题数据集标识符的线性表RankedFilteredTop
    icalDatasetIDs中所有主题数据集的部分描述性元数据和部分访问元数据;
    S42:将已获取的上述元数据按过滤并排序后主题数据集标识符的线性表RankedFilte
    redTopicalDatasetIDs中的主题数据集顺序在人机交互界面中依次呈现,若上述用于过滤
    的数据质量分面是一个质量度量指标,则同时呈现各主题数据集在该质量度量指标上的用
    于排序的质量度量值。
    8.一种基于数据质量的主题数据集多层分面过滤系统,包括:数据质量分面分类层次
    的构建并存储模块、数据质量分面分类层次的物化和可视化模块、基于数据质量的数据集
    过滤模块、主题数据集过滤并排序结果的输出模块、人机交互界面,其中:
    所述数据质量分面分类层次的构建并存储模块用于根据数据目录中数据集质量元数
    据构建并存储一个数据质量分面分类层次;
    所述数据质量分面分类层次的物化和可视化模块用于根据数据质量分面分类层次和
    用户搜索数据目录所产生的主题数据集物化出一个特定主题的数据质量分面分类层次,并
    将其树形结构在人机交互界面中进行可视化;
    所述基于数据质量的数据集过滤模块用于根据用户在上述树形结构中选择的数据质
    量分面对主题数据集进行基于数据质量的过滤,并按用户选定的方式对过滤结果进行排
    序;
    所述主题数据集过滤并排序结果的输出模块用于在人机交互界面中输出过滤并排序
    后的主题数据集信息;
    所述人机交互界面用于实现用户与该系统之间的人机交互,包括:用户在该界面中输
    入数据集搜索主题、系统在该界面中将一个特定主题的数据质量分面分类层次的树形结构
    进行可视化、用户在上述可视化的树形结构中选择一个用于过滤的数据质量分面并选定主
    题数据集的排序方式、系统在该界面中呈现过滤并排序后的主题数据集信息。

    说明书

    基于数据质量的主题数据集多层分面过滤方法与系统

    技术领域

    本发明属于数据集搜索与分面过滤、Web数据目录与元数据、数据质量管理等领域
    的交叉技术领域,涉及一种基于数据质量的数据集分面过滤技术,尤其是一种基于数据质
    量的主题数据集多层分面过滤方法与系统。

    背景技术

    数据是当今世界能创造巨大价值的重要资源,而万维网(World Wide Web,简称
    Web)已成为数据发布、使用、消费的主流平台。各种持有大量数据集(dataset)的数据目录
    (data catalog/catalogue)在Web上集中发布,形成一个个所谓的数据目录门户(data
    catalog portal)或简称为数据门户(data portal)。有的开放数据(open data)目录门户
    中的数据集是供数据消费者(通常称为“用户”)免费使用的,如:包括2009年5月始启用的美
    国政府开放数据门户DATA.GOV(https://www.data.gov)和2012年12月始启用的欧盟开放
    数据门户(http://data.europa.eu)在内的全球数十个国家或地区及其所辖省市的数百个
    开放政府(open government)数据门户;有的数据目录门户已成为基于Web的在线数据交易
    集市,如:国外的DataShop.biz(http://www.datashop.biz/)和国内的数据堂(http://
    datatang.com/)。

    虽然数据目录门户为用户寻找数据资源提供了前所未有的新机会,但是数据目录
    往往持有大量数据集的事实使用户面临了一种新的信息/选择过载(information/choice
    overload)难题。例如,DATA.GOV数据门户截止2016年8月9日在其数据目录中发布了
    Agriculture(农业)、Business(商务)、Climate(气候)、Consumer(消费者)、Ecosystems(生
    态系统)、Education(教育)、Energy(能源)、Finance(金融)、Health(卫生保健)、Local
    Government(地方政府)、Manufacturing(制造业)、Ocean(海洋)、Public Safety(公共安
    全)、Science&Research(科学与研究)共14个主题领域的185,989个数据集,用户很难通过
    浏览某个主题领域寻找到合适的数据集。为解决此类难题,用户只能借助于数据目录门户
    提供的数据集主题搜索(topical search)和分面过滤(faceted filtering)技术。

    一般来说,用户在数据目录中搜寻满足其特定“数据需求”的数据集的过程通常从
    该用户的兴趣主题(topic of interest)出发,首先使用检索关键词(keywords)通过数据
    目录门户提供的数据集搜索引擎对整个数据目录的或用户选定的某个主题领域的数据集
    的元数据(metadata about datasets)进行主题搜索,然后在搜索结果数据集即所谓的主
    题数据集(topical datasets)清单中直接浏览选择数据集,或借助数据目录门户提供的对
    搜索结果数据集的分面过滤手段来进一步筛选“中意的”数据集。当前数据门户,即使是代
    表最高技术发展水平的数据门户(如:美国政府和欧盟的开放数据门户),仅提供了功能上
    有限的数据集主题搜索和分面过滤技术手段:无论数据目录门户是否采用最为先进的语义
    (semantic)元数据,数据集搜索引擎通过简单的关键词匹配或先进的语义匹配后返回的结
    果数据集(即主题数据集)通常只能按主题相关度(relevance)、数据集名称、数据集发布/
    更新日期、数据集的用户浏览次数即流行度(popularity)等进行排序;搜索结果数据集的
    再过滤技术手段也仅有按数据集的类型、数据格式、发布机构等的简单分面过滤。总之,现
    有的(主题)数据集分面过滤技术由于忽视了数据质量(data quality)这个重要的数据特
    性,不能完整地体现用户的“数据需求”,从而未帮助用户很好解决上述信息/选择过载难
    题。

    用户的兴趣主题固然对用户搜寻数据资源很重要,但数据质量是用户选用数据资
    源时的一个关键考虑因素。正如《ISO/IEC 25012数据质量模型》国际标准的技术文档中所
    言:“data quality[refers to the]degree to which the characteristics of data
    satisfy stated and implied needs when used under specified conditions.(“数据
    质量是指数据在指定条件下使用时数据的特性对明确的和隐含的需求的一种满足程
    度”)...data quality is a key component of the quality and usefulness of
    information derived from that data,and most business processes depend on the
    quality of data.A common prerequisite to all information technology projects
    is the quality of the data which are exchanged,processed and used between the
    computer systems and users and among computer systems themselves.(数据质量是
    源于该数据的信息的质量和有用性的一个关键要素,大多数业务流程取决于数据的质量;
    所有信息技术项目的一个共同先决条件是在计算机系统和用户之间以及计算机系统本身
    之间交换、处理和使用的数据的质量)”(摘自:ISO/IEC 25012:2008,Software
    engineering–Systems product Quality Requirements and Evaluation(SQuaRE)–Data
    quality model.International Standard by the Joint Technical Committee ISO/IEC
    JTC 1of the International Organization for Standardization(ISO)and the
    International Electrotechnical Commission(IEC),12/01/2008.http://www.iso.org/
    iso/catalogue_detail.htm?csnumber=35736或http://iso25000.com/index.php/en/
    iso-25000-standards/iso-25012);专门制定万维网技术标准与规范的万维网联盟(World
    Wide Web Consortium,简称W3C)近期颁布的《Web数据最佳实践》规范中也强调:“The
    quality of a dataset can have a big impact on the quality of applications
    that use it.As a consequence,the inclusion of data quality information in
    data publishing and consumption pipelines is of primary importance.(数据集的
    质量会对使用数据集的应用的质量产生很大影响,因此,在数据发布和消费管道中包含数
    据质量信息是最为重要的。)...Data quality might seriously affect the
    suitability of data for specific applications...Documenting data quality
    significantly eases the process of dataset selection,increasing the chances
    of reuse.(数据质量可严重影响数据对特定应用的适用性...记载数据质量可显著简化用
    户选用数据集的过程,增加数据被复用的机会。)”(摘自:Data on the Web Best
    Practices.W3C Recommendation,2016.https://www.w3.org/TR/dwbp/[2016-8-14访
    问])。由此可见,很有必要将数据集搜索与分面过滤、Web数据目录与元数据、数据质量管理
    等领域的最新技术进行有机组合,发明一种基于数据质量的数据集分面过滤技术解决方
    案。这样的技术解决方案不仅克服了现有技术的缺陷(即:数据集分面过滤技术忽视数据质
    量这个数据的关键要素),而且必将取得预料不到的技术效果(即:用户可从数据质量角度
    来选用数据资源)。

    尽管数据质量管理不是一个新课题,数据目录的技术研发和工业实践也已历时多
    年,但是,现有技术存在以上缺陷是有原因的:前些年,数据目录技术与元数据领域尚未有
    效引入数据质量管理技术。近年来,由于数据目录技术的长足进步,尤其是由于本体、RDF
    (Resource Description Framework,资源描述框架)(参见:RDF 1.1Concepts and
    Abstract Syntax.W3C Recommendation,25February 2014.https://www.w3.org/TR/
    rdf11-concepts/)及RDF数据的SPARQL查询语言(参见:SPARQL 1.1Overview.W3C
    Recommendation,21March 2013.https://www.w3.org/TR/sparql11-overview/)等语义网
    (Semantic Web)技术开始成功应用于数据目录与元数据领域,Web数据目录的技术基础设
    施已今非昔比。这为克服以上技术缺陷、为用户解决一直渴望的“从数据质量角度来选用数
    据资源”的技术难题提供了希望和契机。为了有利于理解本发明技术方案的背景技术,下面
    对数据目录与元数据领域的最新技术进步进行简介。

    (1)DCAT——《数据目录词汇》标准(参见:Data Catalog Vocabulary(DCAT).W3C
    Recommendation,16January 2014.https://www.w3.org/TR/vocab-dcat/):

    W3C于2014年颁布的DCAT(数据目录词汇)是一种RDF词汇,用于来描述数据目录
    (使用dcat:Catalog类)、数据集(使用dcat:Dataset类)、数据目录本身和数据集的描述性
    元数据(descriptive metadata)的属性(如:dct:title,dct:description,dcat:theme,
    dcat:keyword,dct:publisher,dct:issued,dct:modified,等)以及数据集的访问元数据
    (access metadata)的属性(如:dct:fromat,dcat:accessURL,dcat:downloadURL,等)。
    DCAT将数据目录定义为数据集元数据的一个有组织集合;将数据集定义为由单个主体
    (agent)在数据目录中发布的、可以一种或多种格式来访问或下载的一个数据集合。DCAT并
    不限定数据集的组织方式,数据集可以不是关联数据(linked data)。

    DCAT是一种机器可读的(machine-readable)元数据,有利于提高数据目录之间的
    互操作性,便于应用程序消费来自多个数据目录的元数据;通过使用DCAT来描述数据目录
    中的数据集,可提高数据集的可发现性。目前DCAT已有许多实现与应用(参见:https://
    www.w3.org/2011/gld/wiki/DCAT_Implementations),一些最高技术水平的数据门户(包
    括美国政府和欧盟的开放数据门户)已采用/改用DCAT来描述其数据目录与数据集。

    (2)DWBP——《Web数据最佳实践》技术标准(参见:Data on the Web Best
    Practices.W3C Recommendation,2016.https://www.w3.org/TR/dwbp/):

    W3C于2013年底启动的Web数据最佳实践(DWBP)工作组旨在通过制定一系列最佳
    实践技术规范和标准化词汇来指导数据发布者、促进数据的发现和复用、提升数据发布者
    和消费者之间的互动,帮助发展Web数据生态系统;该工作组计划于2016年完成技术规范和
    标准的制订工作。

    DWBP(Web数据最佳实践)技术标准规定,数据的Web发布必须遵循Web体系结构原
    理,并使用标准化词汇和国际标准为数据目录和数据集提供机器可读的元数据,包括使用
    DCAT、数据质量词汇(Data Quality Vocabulary,DQV)和数据集使用词汇(Dataset Usage
    Vocabulary,DUV)等。遵循这些最佳实践规范将促进数据发布者和消费者之间的有效沟通
    与互动,增加双方之间的相互信任。该技术标准尤其规定数据发布者必须以数据质量元数
    据(data quality metadata)的形式提供关于数据集的数据质量信息。

    (3)DQV——《数据质量词汇》技术规范(参见:Data on the Web Best Practices:
    Data Quality Vocabulary.W3C Technical Report,2016.https://www.w3.org/TR/
    vocab-dqv/):

    DQV(数据质量词汇)是W3C的Web数据最佳实践(DWBP)工作组制定的关于数据集质
    量的技术规范。作为DCAT的扩充,DQV是一种RDF词汇,用来建模与表达数据目录中数据集的
    数据质量。W3C的DWBP工作组认为“quality lies in the eye of the beholder...there
    is no objective,ideal definition of it.(数据质量的好坏是一种观察者的个人看
    法...没有完全客观的、理想的质量定义)”;DQV将数据质量定义为“‘fitness for use’for
    a specific application or use case(数据对特定应用或用例的使用适合度)”,因此,不
    限于数据发布者,认证机构、数据整合商和消费者(即用户)都可以对数据集做出自己的质
    量评价(quality assessment)。

    DQV引入属性dqv:hasQualityMetadata来描述数据集(作为dcat:Dataset类的实
    例)的质量元数据(作为dqv:QualityMetadata类的实例);作为对数据集的质量评价结果,
    DQV引入属性dqv:hasQualityMeasurement(或其逆属性dqv:computedOn)来表达针对某个
    数据集的具体质量度量(作为dqv:QualityMeasurement类的实例),具体质量度量以质量度
    量名称-度量值(即名-值对)的形式来表示。进一步地,DQV采用抽象的质量度量层次结构
    (hierarchical structure of quality measurements)来组织对全体数据集的所有质量
    评价结果,这样的层次结构称为数据质量的层次模型(hierarchical quality model)。在
    该层次模型中,用属性dqv:inMeasurementOf来描述一个质量度量使用哪个质量度量指标
    (作为dqv:Metric类的实例),用属性dqv:inDemension来进一步描述一个质量度量指标属
    于哪个质量维(作为dqv:Demension类的实例),用属性dqv:inCategory来进一步描述一个
    质量维属于哪个质量类别(作为dqv:Category类的实例)。由此可见,DQV采用的数据质量模
    型是一种三层(质量类别-质量维-质量度量指标)抽象模型。

    在数据质量管理领域,三层数据质量层次模型是一种典型的、标准化的数据质量
    模型。尽管各种标准化组织或专业领域或国民经济行业所定义的通用的(generic/
    general)或领域特定的(domain-specific)数据质量模型中可能使用不同的层名称(英
    文),但是,自顶向下地,数据质量模型的三个层的名称和含义依次为:

    第一层:质量类别(quality category/perspective/characteristic):质量类别
    是质量模型中的一种抽象实体,用来系统化地组织质量维;一个质量类别代表一组质量维,
    即一个质量类别可包含多个具有相似质量特性的质量维,而一个质量维通常仅属于一个质
    量类别。

    第二层:质量维(quality dimensions/cluster/sub-characteristic):质量维是
    质量模型中的一种抽象实体,用来系统化地组织质量度量指标;一个质量维代表一组质量
    度量指标,即一个质量维可包含多个具有相似质量子特性的质量度量指标,而一个质量度
    量指标通常仅属于一个质量维。

    第三层:质量度量指标(quality metric/measurement procedure/indicator):
    质量度量指标是质量模型中的一种抽象实体,用来系统化地组织具体的质量度量;一个质
    量度量指标代表一组质量度量,这些质量度量使用同一个质量度量指标来计算质量度量
    值,而一个具体质量度量仅使用一个质量度量指标。质量度量值可以是数值型(numeric)
    的,也可以是布尔型(boolean)的。

    不同的标准化组织或专业领域所定义的通用或领域特定的数据质量模型可能采
    用不同的层次模型,但是,它们的共性是数据质量模型的层次结构都是上述三层。举例如
    下:

    前文所述的ISO/IEC 25012数据质量模型是一个极其通用(very general)的数据
    质量层次模型,其中定义了15个质量维,这些质量维进一步归属于3个质量类别;由于该国
    际标准是为所有计算机软件应用所制定的,其数据质量模型中没有为每个质量维定义质量
    度量指标,特意留待特定领域的软件应用定义自己的质量度量指标。

    Zaveri等人为关联数据质量评价技术领域提出的数据质量模型(参见:Amrapali
    Zaveri,Anisa Rula,Andrea Maurino,Ricardo Pietrobon,Jens Lehmann,
    Auer.Quality assessment for Linked Data:A Survey.Semantic Web,vol.7,no.1,
    pp.63-93,2016)中定义了69个质量度量指标,这些质量度量指标进一步归属于18个质量
    维,这些质量维进一步归属于4个质量类别。

    Radulovic等人提出的关联数据质量模型(LDQM)(参见:F.Radulovic,
    N.Mihindukulasooriya,R.García-Castro,and A.Gómez-Pérez.A comprehensive
    quality model for Linked Data.Submission to Semantic Web,an IOS Press
    Journal,2016.http://www.semantic-web-journal.net/content/comprehensive-
    quality-model-linked-data-0或http://delicias.dia.fi.upm.es/LDQM)以上述通用的
    ISO/IEC 25012数据质量模型和Zaveri等人提出的数据质量模型为基础,定义了124个质量
    度量指标,这些质量度量指标进一步归属于15个质量维,这些质量维进一步归属于2个质量
    类别。

    正如W3C的《数据质量词汇(DQV)》技术规范中所言,所有标准化组织或专业领域或
    国民经济行业所定义的通用的或领域特定的数据质量模型(包括其子集或改编)都可以用
    DQV进行落地(grounding)表示,用于特定的数据目录门户。DQV技术规范文档中给出了将上
    述ISO/IEC 25012数据质量模型和Zaveri等人提出的数据质量模型用DQV来表示的例子,其
    基本方法是将数据质量模型中的质量类别表示为dqv:Category类的实例、将该质量类别所
    包含的质量维表示为dqv:Demension类的实例、将该质量维所包含的质量度量指标表示为
    dqv:Metric类的实例。这样表示三层数据质量层次模型后,使用某个质量度量指标对某个
    数据集进行质量评价后产生的质量度量就可表示为dqv:QualityMeasurement类的实例。

    综上所述,数据目录与元数据技术领域有效引入数据质量管理技术后,用户一直
    渴望的“从数据质量角度来选用数据资源”的技术难题就有望得到解决。虽然上述W3C《数据
    质量词汇(DQV)》技术规范刚刚制定,数据目录门户工业界目前(指本发明专利申请时)尚未
    运用DQV,但是,运用DQV必定是数据目录门户的技术发展趋势。

    发明内容

    本发明所要解决的技术问题是提供一种能对数据目录门户的主题搜索结果数据
    集(即主题数据集)进行基于数据质量的多层分面过滤的方法与系统,从而克服现有主题数
    据集过滤技术忽视数据质量的弊端,方便用户筛选出符合其特定数据质量要求的主题数据
    集。

    为解决上述技术问题,本发明是通过以下技术方案实现的:

    根据本发明的一个方面,提供了一种基于数据质量的主题数据集多层分面过滤方
    法,包括如下步骤:

    S1:根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次;

    S2:根据数据质量分面分类层次和用户搜索数据目录所产生的主题数据集物化出
    一个特定主题的数据质量分面分类层次,并将其树形结构在人机交互界面中进行可视化;

    S3:根据用户在上述树形结构中选择的数据质量分面对主题数据集进行基于数据
    质量的过滤,并按用户选定的方式对过滤结果进行排序;

    S4:在人机交互界面中输出过滤并排序后的主题数据集信息。

    在该方法中,所述步骤S1进一步包括以下步骤:

    S11:根据数据目录中数据集质量元数据构建一个数据质量分面分类层次H;

    S12:持久存储已构建的数据质量分面分类层次H。

    在该方法中,所述步骤S11进一步包括以下步骤:

    S111:定义一个与三层数据质量层次模型相对应的数据质量分面分类层次H,具体
    包括:

    该数据质量分面分类层次是一种具有依次包含关系的三层结构:第一层是质量类
    别层,其中的每个质量类别有一个名称,并通过指针来指向质量维层中若干个质量维以表
    明该质量类别包含这些质量维的关系,第二层是质量维层,其中的每个质量维有一个名称,
    并通过指针来指向质量度量指标层中若干个质量度量指标以表明该质量维包含这些质量
    度量指标的关系,第三层是质量度量指标层,其中的每个质量度量指标有一个名称,在数据
    目录门户的实际应用中,一个质量度量指标可用于对若干个数据集进行质量度量,一个数
    据集可在若干个质量度量指标上有质量度量,并且,一个数据集在某个质量度量指标上可
    有若干个质量度量,每个质量度量以质量度量名-值对的形式存在;

    在上述数据质量分面分类层次中,每个数据质量分面,即:每个具体的质量类别、
    质量维或质量度量指标,都将按以下方式来记录拥有与其相关的质量度量的所有数据集的
    标识信息:每个具体的质量度量指标都将记录在该质量度量指标上有质量度量的所有数据
    集的标识符,每个具体的质量维都将记录在它包含的全部质量度量指标上有质量度量的所
    有数据集的标识符,并将这样的数据集简称为“在该质量维下有质量度量的数据集”,类似
    地,每个具体的质量类别都将记录在它包含的全部质量维所包含的全部质量度量指标上有
    质量度量的所有数据集的标识符,并将这样的数据集简称为“在该质量类别下有质量度量
    的数据集”;

    进一步地,上述数据质量分面分类层次H的数据结构用数学符号描述如下:

    一个数据质量分面分类层次是一个三元组H=(C,D,M),其中,C是质量类别的线性
    表,D是质量维的线性表的集合,M是质量度量指标的线性表的集合;

    质量类别的线性表C=(C1,C2,…,Cl),其中,l为该线性表的长度,每个元素Ci,i=
    1,2,…,l是一个质量类别,包含三个数据项:质量类别的名称Ci.Name,在该质量类别下有
    质量度量的数据集标识符的线性表Ci.ListOfDatasetIDs,指向该质量类别所包含的质量
    维的线性表Di的指针Ci.Pointer;

    Ci所指向的质量维的线性表Di=(Di1,Di2,…,Dim),其中,m为该线性表的长度,每个
    元素Dij,j=1,2,…,m是一个质量维,包含三个数据项:质量维的名称Dij.Name,在该质量维
    下有质量度量的数据集标识符的线性表Dij.ListOfDatasetIDs,指向该质量维所包含的质
    量度量指标的线性表Mij的指针Dij.Pointer;

    Dij所指向的质量度量指标的线性表Mij=(Mij1,Mij2,…,Mijn),其中,n为该线性表
    的长度,每个元素Mijk,k=1,2,…,n是一个质量度量指标,包含两个数据项:质量度量指标
    的名称Mijk.Name,在该质量度量指标上有质量度量的数据集标识符的线性表
    Mijk.ListOfDatasetIDs,这些数据集在该质量度量指标上可有若干个质量度量,每个质量
    度量以质量度量名-值对的形式存在;

    S112:从数据目录中获取所有数据集的质量元数据,将其中的质量类别、质量维、
    质量度量指标的名称及相互包含关系相应地赋值至上述数据质量分面分类层次,各层中全
    部的数据集标识符的线性表均暂置为空。

    在该方法中,所述步骤S2进一步包括以下步骤:

    S21:从数据目录门户的数据集搜索引擎获取用户搜索数据目录所搜索到的主题
    数据集,若搜索结果为空则终止处理,否则据此形成一个主题数据集标识符的线性表
    TopicalDatasetIDs;

    S22:读取已构建并存储的数据质量分面分类层次H;

    S23:根据主题数据集标识符的线性表TopicalDatasetIDs来物化已读取的数据质
    量分面分类层次H,以产生一个特定主题的数据质量分面分类层次

    S24:将特定主题的数据质量分面分类层次的树形结构在人机交互界面中进行
    可视化。

    在该方法中,所述步骤S23进一步包括以下步骤:

    S231:从数据目录中获取主题数据集标识符的线性表TopicalDatasetIDs中所有
    数据集的质量元数据;

    S232:根据所获取的质量元数据来物化数据质量分面分类层次H的质量度量指标
    层,以产生特定主题的数据质量分面分类层次的质量度量指标层,具体包括:

    首先,对数据质量分面分类层次H中的每个质量度量指标Mijk,若质量元数据中使
    用了该质量度量指标进行质量度量,则将其作为特定主题的数据质量分面分类层次中的
    一个质量度量指标然后,对中每一个这样的质量度量指标从主题数据集标识
    符的线性表TopicalDatasetIDs中找出在该质量度量指标上有质量度量的所有主题数据
    集,将这些主题数据集的标识符赋值给在该质量度量指标上有质量度量的主题数据集标识
    符的线性表并将该线性表中的每个主题数据集在该质量度量指标上
    的所有质量度量的名-值对存储于相应的集合其中1≤t
    ≤线性表的长度;

    S233:根据特定主题的数据质量分面分类层次的质量度量指标层来进一步物化
    数据质量分面分类层次H的质量维层,以产生特定主题的数据质量分面分类层次的质量
    维层,具体包括:

    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量度量指标来
    确定数据质量分面分类层次H中包含这些质量度量指标的各个质量维,将它们作为特定主
    题的数据质量分面分类层次中的各个质量维,然后,对中每个这样的质量维通过指
    针所指向的线性表来找出该质量维所包含的所有质量度量指标,并将全部x
    个在这些质量度量指标上有质量度量的主题数据集标识符的线性表
    1≤k≤x进行去除重复元素的合并后,赋值给在该质量维下有质量度量的主题数据集标识
    符的线性表即:

    <mrow> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> <mn>1</mn> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <mo>...</mo> <mo>&cup;</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> <mi>x</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>;</mo> </mrow>

    S234:根据特定主题的数据质量分面分类层次的质量维层来进一步物化数据质
    量分面分类层次H的质量类别层,以产生特定主题的数据质量分面分类层次的质量类别
    层,具体包括:

    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量维来确定数
    据质量分面分类层次H中包含这些质量维的各个质量类别,将它们作为特定主题的数据质
    量分面分类层次中的各个质量类别,然后,对中每个这样的质量类别通过指针
    所指向的线性表来找出该质量类别所包含的所有质量维,并将全部y个在这些
    质量维下有质量度量的主题数据集标识符的线性表1≤j≤y进行去除
    重复元素的合并后,赋值给在该质量类别下有质量度量的主题数据集标识符的线性表
    即:

    <mrow> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mn>1</mn> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <mo>...</mo> <mo>&cup;</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>y</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>.</mo> </mrow>

    在该方法中,所述步骤S3进一步包括以下步骤:

    S31:根据用户在人机交互界中的上述树形结构中选择的一个用于过滤的数据质
    量分面,产生过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs,具体包括:

    若用户在上述树形结构中选择的数据质量分面是一个质量类别则将在该质量
    类别下有质量度量的主题数据集标识符的线性表中的全部主题数据集
    标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    若用户在上述树形结构中选择的数据质量分面是一个质量维则将在该质量
    维下有质量度量的主题数据集标识符的线性表中的全部主题数据集标
    识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    若用户在上述树形结构中选择的数据质量分面是一个质量度量指标则将在该
    质量度量指标上有质量度量的主题数据集标识符的线性表中的全部主
    题数据集标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    S32:按用户在人机交互界中选定的排序方式对过滤后主题数据集标识符的线性
    表FilteredTopicalDatasetIDs中的主题数据集进行排序,产生过滤并排序后主题数据集
    标识符的线性表RankedFilteredTopicalDatasetIDs,具体包括:

    若用户选择的数据质量分面是一个质量度量指标则在人机交互界中向用户
    提供对过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs中的主题数据集按
    质量度量值进行排序的选项:让用户选择在该质量度量指标上的若干个质量度量中使用哪
    个质量度量作为排序依据,并选择升序或降序的排序方式,排序时,数值型质量度量值直接
    比较大小,布尔型质量度量值的比较方式为假小于真,即false<true;

    若用户选择的数据质量分面是一个质量维或质量类别则让用户在数据目录
    门户现有的搜索结果排序方式中选择一种方式对过滤后主题数据集标识符的线性表
    FilteredTopicalDatasetIDs中的数据集进行排序;

    将上述两种情况之一的排序结果赋值给过滤并排序后主题数据集标识符的线性
    表RankedFilteredTopicalDatasetIDs。

    在该方法中,所述步骤S4进一步包括以下步骤:

    S41:从数据目录中获取过滤并排序后主题数据集标识符的线性表RankedFiltere
    dTopicalDatasetIDs中所有主题数据集的部分描述性元数据和部分访问元数据;

    S42:将已获取的上述元数据按过滤并排序后主题数据集标识符的线性表
    RankedFilteredTopicalDatasetIDs中的主题数据集顺序在人机交互界面中依次呈现,若
    上述用于过滤的数据质量分面是一个质量度量指标,则同时呈现各主题数据集在该质量度
    量指标上的用于排序的质量度量值。

    根据本发明的另一个方面,还提供了一种基于数据质量的主题数据集多层分面过
    滤系统,包括:数据质量分面分类层次的构建并存储模块、数据质量分面分类层次的物化和
    可视化模块、基于数据质量的数据集过滤模块、主题数据集过滤并排序结果的输出模块、人
    机交互界面,其中:

    所述数据质量分面分类层次的构建并存储模块用于实现本发明方法中的步骤S1:
    根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次;

    所述数据质量分面分类层次的物化和可视化模块用于实现本发明方法中的步骤
    S2:根据数据质量分面分类层次和用户搜索数据目录所产生的主题数据集物化出一个特定
    主题的数据质量分面分类层次,并将其树形结构在人机交互界面中进行可视化;

    所述基于数据质量的数据集过滤模块用于实现本发明方法中的步骤S3:根据用户
    在上述树形结构中选择的数据质量分面对主题数据集进行基于数据质量的过滤,并按用户
    选定的方式对过滤结果进行排序;

    所述主题数据集过滤并排序结果的输出模块用于实现本发明方法中的步骤S4:在
    人机交互界面中输出过滤并排序后的主题数据集信息;

    所述人机交互界面用于实现用户与该系统之间的人机交互,包括:用户在该界面
    中输入数据集搜索主题、系统在该界面中将一个特定主题的数据质量分面分类层次的树形
    结构进行可视化、用户在上述可视化的树形结构中选择一个用于过滤的数据质量分面并选
    定主题数据集的排序方式、系统在该界面中呈现过滤并排序后的主题数据集信息。

    本发明的有益效果主要包括三个方面:(1)本发明克服了现有搜索结果数据集分
    面过滤技术忽视数据质量的弊端;(2)本发明通过将数据集Web发布与消费领域中的数据目
    录及其元数据技术与标准、数据质量管理领域中的数据质量层次模型技术与标准、Web搜索
    与信息过滤领域中的分面浏览与过滤方法与技术等进行有机组合,在功能上彼此相互支
    持,形成了一种对数据目录门户搜索结果数据集(即主题数据集)进行基于数据质量的多层
    分面过滤的全新方法与系统,从而方便用户筛选出符合其特定数据质量要求的主题数据
    集,增加数据被消费的机会,促进数据生态系统的健康发展;(3)本发明充分利用了Web数据
    集的数据质量模型与词汇最新技术标准所带来的独特技术效果,实现了对主题数据集进行
    基于数据质量的多层分面过滤,代表了数据目录门户技术的必然发展趋势。

    下面结合附图对本发明的具体实施方式作进一步的描述。本发明附加的方面和优
    点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了
    解到。

    附图说明

    图1是根据本发明技术方案的基于数据质量的主题数据集多层分面过滤方法的步
    骤流程图;

    图2是根据本发明技术方案的基于数据质量的主题数据集多层分面过滤方法中物
    化前、后的数据质量分面分类层次的数据结构示意图,其中,顶部框中图案部分为物化前的
    数据结构示意,全图中粗线框图案部分为物化后的数据结构示意;

    图3是根据本发明技术方案的基于数据质量的主题数据集多层分面过滤系统的体
    系结构与处理流程图,图中符号遵循国家标准GB 1526-89(等同于国际标准ISO 5807-
    1985);

    图4是本发明的一个优选的具体实施例中构建物化前、后的数据质量分面分类层
    次所依据的数据质量层次模型及相关的主要本体类及其关系;

    图5是本发明的一个优选的具体实施例中基于数据质量的主题数据集多层分面过
    滤系统(原型)输出数据集过滤结果的人机交互界面截屏。

    具体实施方式

    下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始
    至终相同或类似的标号表示相同或类似的概念、对象、要素等或具有相同或类似功能的概
    念、对象、要素等。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不
    能解释为对本发明的限制。

    本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术
    语和科学术语)具有与本发明所属领域及相关领域中的普通技术人员的一般理解相同的意
    义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上
    下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来
    解释。

    为便于查阅,表1列出了本发明技术方案统一使用的数学符号与公式及它们的含
    义。

    表1:统一使用的数学符号与公式及其含义







    为了解决上述技术问题,本发明是通过以下技术方案实现的:

    根据本发明的一个方面,提供了一种基于数据质量的主题数据集多层分面过滤方
    法,如图1所示,包括如下步骤:

    S1:根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次H,
    具体包括以下步骤:

    S11:根据数据目录中数据集质量元数据构建一个数据质量分面分类层次H,具体
    包括以下步骤:

    S111:定义一个与三层数据质量层次模型相对应的数据质量分面分类层次H,其数
    据结构的示意如图2中顶部框中图案部分所示,具体包括:

    该数据质量分面分类层次是一种具有依次包含关系的三层结构:第一层是质量类
    别层,其中的每个质量类别有一个名称,并通过指针来指向质量维层中若干个质量维以表
    明该质量类别包含这些质量维的关系,第二层是质量维层,其中的每个质量维有一个名称,
    并通过指针来指向质量度量指标层中若干个质量度量指标以表明该质量维包含这些质量
    度量指标的关系,第三层是质量度量指标层,其中的每个质量度量指标有一个名称,在数据
    目录门户的实际应用中,一个质量度量指标可用于对若干个数据集进行质量度量,一个数
    据集可在若干个质量度量指标上有质量度量,并且,一个数据集在某个质量度量指标上可
    有若干个质量度量,每个质量度量以质量度量名-值对的形式存在;

    在上述数据质量分面分类层次中,每个数据质量分面,即:每个具体的质量类别、
    质量维或质量度量指标,都将按以下方式来记录拥有与其相关的质量度量的所有数据集的
    标识信息:每个具体的质量度量指标都将记录在该质量度量指标上有质量度量的所有数据
    集的标识符,每个具体的质量维都将记录在它包含的全部质量度量指标上有质量度量的所
    有数据集的标识符,并将这样的数据集简称为“在该质量维下有质量度量的数据集”,类似
    地,每个具体的质量类别都将记录在它包含的全部质量维所包含的全部质量度量指标上有
    质量度量的所有数据集的标识符,并将这样的数据集简称为“在该质量类别下有质量度量
    的数据集”;

    进一步地,上述数据质量分面分类层次H的数据结构用数学符号描述如下:

    一个数据质量分面分类层次是一个三元组H=(C,D,M),其中,C是质量类别的线性
    表,D是质量维的线性表的集合,M是质量度量指标的线性表的集合;

    质量类别的线性表C=(C1,C2,…,Cl),其中,l为该线性表的长度,每个元素Ci,i=
    1,2,…,l是一个质量类别,包含三个数据项:质量类别的名称Ci.Name,在该质量类别下有
    质量度量的数据集标识符的线性表Ci.ListOfDatasetIDs,指向该质量类别所包含的质量
    维的线性表Di的指针Ci.Pointer;

    Ci所指向的质量维的线性表Di=(Di1,Di2,…,Dim),其中,m为该线性表的长度,每个
    元素Dij,j=1,2,…,m是一个质量维,包含三个数据项:质量维的名称Dij.Name,在该质量维
    下有质量度量的数据集标识符的线性表Dij.ListOfDatasetIDs,指向该质量维所包含的质
    量度量指标的线性表Mij的指针Dij.Pointer;

    Dij所指向的质量度量指标的线性表Mij=(Mij1,Mij2,…,Mijn),其中,n为该线性表
    的长度,每个元素Mijk,k=1,2,…,n是一个质量度量指标,包含两个数据项:质量度量指标
    的名称Mijk.Name,在该质量度量指标上有质量度量的数据集标识符的线性表
    Mijk.ListOfDatasetIDs,这些数据集在该质量度量指标上可有若干个质量度量,每个质量
    度量以质量度量名-值对的形式存在;

    S112:从数据目录中获取所有数据集的质量元数据,将其中的质量类别、质量维、
    质量度量指标的名称及相互包含关系相应地赋值至上述数据质量分面分类层次H,各层中
    全部的数据集标识符的线性表均暂置为空。

    S12:持久存储已构建的数据质量分面分类层次H。

    S2:根据数据质量分面分类层次H和用户搜索数据目录所产生的主题数据集物化
    出一个特定主题的数据质量分面分类层次并将其树形结构在人机交互界面中进行可视
    化,具体包括以下步骤:

    S21:从数据目录门户的数据集搜索引擎获取用户搜索数据目录所搜索到的主题
    数据集,若搜索结果为空则终止处理,否则据此形成一个主题数据集标识符的线性表
    TopicalDatasetIDs;

    S22:读取已构建并存储的数据质量分面分类层次H;

    S23:根据主题数据集标识符的线性表TopicalDatasetIDs来物化已读取的数据质
    量分面分类层次H,以产生一个特定主题的数据质量分面分类层次其数据结构的示意如
    图2中粗线框图案部分所示,具体包括以下步骤:

    S231:从数据目录中获取主题数据集标识符的线性表TopicalDatasetIDs中所有
    数据集的质量元数据;

    S232:根据所获取的质量元数据来物化数据质量分面分类层次H的质量度量指标
    层,以产生特定主题的数据质量分面分类层次的质量度量指标层,具体包括:

    首先,对数据质量分面分类层次H中的每个质量度量指标Mijk,若质量元数据中使
    用了该质量度量指标进行质量度量,则将其作为特定主题的数据质量分面分类层次中的
    一个质量度量指标然后,对中每一个这样的质量度量指标从主题数据集标识
    符的线性表TopicalDatasetIDs中找出在该质量度量指标上有质量度量的所有主题数据
    集,将这些主题数据集的标识符赋值给在该质量度量指标上有质量度量的主题数据集标识
    符的线性表并将该线性表中的每个主题数据集在该质量度量指标上
    的所有质量度量的名-值对存储于相应的集合其中1≤t
    ≤线性表的长度;

    S233:根据特定主题的数据质量分面分类层次的质量度量指标层来进一步物化
    数据质量分面分类层次H的质量维层,以产生特定主题的数据质量分面分类层次的质量
    维层,具体包括:

    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量度量指标来
    确定数据质量分面分类层次H中包含这些质量度量指标的各个质量维,将它们作为特定主
    题的数据质量分面分类层次中的各个质量维,然后,对中每个这样的质量维通过指
    针所指向的线性表来找出该质量维所包含的所有质量度量指标,并将全部x
    个在这些质量度量指标上有质量度量的主题数据集标识符的线性表
    1≤k≤x进行去除重复元素的合并后,赋值给在该质量维下有质量度量的主题数据集标识
    符的线性表即:

    <mrow> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> <mn>1</mn> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <mo>...</mo> <mo>&cup;</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> <mi>x</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>;</mo> </mrow>

    S234:根据特定主题的数据质量分面分类层次的质量维层来进一步物化数据质
    量分面分类层次H的质量类别层,以产生特定主题的数据质量分面分类层次的质量类别
    层,具体包括:

    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量维来确定数
    据质量分面分类层次H中包含这些质量维的各个质量类别,将它们作为特定主题的数据质
    量分面分类层次中的各个质量类别,然后,对中每个这样的质量类别通过指针
    所指向的线性表来找出该质量类别所包含的所有质量维,并将全部y个在这些
    质量维下有质量度量的主题数据集标识符的线性表1≤j≤y进行去除
    重复元素的合并后,赋值给在该质量类别下有质量度量的主题数据集标识符的线性表
    即:

    <mrow> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mn>1</mn> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <mo>...</mo> <mo>&cup;</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mrow> <mi>i</mi> <mi>y</mi> </mrow> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>.</mo> </mrow>

    S24:将特定主题的数据质量分面分类层次的树形结构在人机交互界面中进行
    可视化。

    S3:根据用户在上述树形结构中选择的数据质量分面对主题数据集进行基于数据
    质量的过滤,并按用户选定的方式对过滤结果进行排序,具体包括以下步骤:

    S31:根据用户在人机交互界中的上述树形结构中选择的一个用于过滤的数据质
    量分面,产生过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs,具体包括:

    若用户在上述树形结构中选择的数据质量分面是一个质量类别则将在该质量
    类别下有质量度量的主题数据集标识符的线性表中的全部主题数据集
    标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    若用户在上述树形结构中选择的数据质量分面是一个质量维则将在该质量
    维下有质量度量的主题数据集标识符的线性表中的全部主题数据集标
    识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    若用户在上述树形结构中选择的数据质量分面是一个质量度量指标则将在该
    质量度量指标上有质量度量的主题数据集标识符的线性表中的全部主
    题数据集标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    S32:按用户在人机交互界中选定的排序方式对过滤后主题数据集标识符的线性
    表FilteredTopicalDatasetIDs中的主题数据集进行排序,产生过滤并排序后主题数据集
    标识符的线性表RankedFilteredTopicalDatasetIDs,具体包括:

    若用户选择的数据质量分面是一个质量度量指标则在人机交互界中向用户
    提供对过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs中的主题数据集按
    质量度量值进行排序的选项:让用户选择在该质量度量指标上的若干个质量度量中使用哪
    个质量度量作为排序依据,并选择升序或降序的排序方式,排序时,数值型质量度量值直接
    比较大小,布尔型质量度量值的比较方式为假小于真,即false<true;

    若用户选择的数据质量分面是一个质量维或质量类别则让用户在数据目
    录门户现有的搜索结果排序方式中选择一种方式对过滤后主题数据集标识符的线性表
    FilteredTopicalDatasetIDs中的数据集进行排序;

    将上述两种情况之一的排序结果赋值给过滤并排序后主题数据集标识符的线性
    表RankedFilteredTopicalDatasetIDs。

    S4:在人机交互界面中输出过滤并排序后的主题数据集信息,具体包括以下步骤:

    S41:从数据目录中获取过滤并排序后主题数据集标识符的线性表RankedFiltere
    dTopicalDatasetIDs中所有主题数据集的部分描述性元数据(如:数据集的标题、描述信
    息、发布者、发布日期等)和部分访问元数据(如:数据集的数据格式、访问及下载网址等);

    S42:将已获取的上述元数据按过滤并排序后主题数据集标识符的线性表
    RankedFilteredTopicalDatasetIDs中的主题数据集顺序在人机交互界面中依次呈现,若
    上述用于过滤的数据质量分面是一个质量度量指标,则同时呈现各主题数据集在该质量度
    量指标上的用于排序的质量度量值。

    对于上述基于数据质量的主题数据集多层分面过滤方法,值得进一步指出以下几
    点:(1)上述步骤S1宜以适当频度来离线(off-line)执行,其执行频度取决于数据目录中数
    据集和/或质量元数据的批量更新频度(如:每周一次),执行时间点宜选在数据目录门户的
    维护时间段,这样既可提高执行效率又可缩短响应时间;(2)针对用户的一次主题搜索,上
    述步骤S2只需在线(on-line)执行一次,由于特定主题的数据质量分面分类层次是根据步
    骤S1已构建的数据质量分面分类层次物化出的,因此步骤S2所需的执行时间很短,其有益
    的技术效果是缩短了特定主题的数据质量分面分类层次的树形结构在人机交互界面中进
    行可视化的用户等待时间;(3)上述步骤S3和S4的组合可重复执行,其重复执行的次数等于
    用户在特定主题的数据质量分面分类层次的树形结构中选择用于过滤的数据质量分面的
    次数,其有益的技术效果是用户可以对主题数据集进行基于数据质量的多层分面过滤(即
    在多个质量类别、多个质量维、多个质量度量指标上进行分面过滤)。

    根据本发明的另一个方面,还提供了一种基于数据质量的主题数据集多层分面过
    滤系统,如图3所示,包括:数据质量分面分类层次的构建并存储模块、数据质量分面分类层
    次的物化和可视化模块、基于数据质量的数据集过滤模块、主题数据集过滤并排序结果的
    输出模块、人机交互界面,其中:

    所述数据质量分面分类层次的构建并存储模块用于实现本发明方法中的步骤S1:
    根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次;

    所述数据质量分面分类层次的物化和可视化模块用于实现本发明方法中的步骤
    S2:根据数据质量分面分类层次和用户搜索数据目录所产生的主题数据集物化出一个特定
    主题的数据质量分面分类层次,并将其树形结构在人机交互界面中进行可视化;

    所述基于数据质量的数据集过滤模块用于实现本发明方法中的步骤S3:根据用户
    在上述树形结构中选择的数据质量分面对主题数据集进行基于数据质量的过滤,并按用户
    选定的方式对过滤结果进行排序;

    所述主题数据集过滤并排序结果的输出模块用于实现本发明方法中的步骤S4:在
    人机交互界面中输出过滤并排序后的主题数据集信息;

    所述人机交互界面用于实现用户与该系统之间的人机交互,包括:用户在该界面
    中输入数据集搜索主题、系统在该界面中将一个特定主题的数据质量分面分类层次的树形
    结构进行可视化、用户在上述可视化的树形结构中选择一个用于过滤的数据质量分面并选
    定主题数据集的排序方式、系统在该界面中呈现过滤并排序后的主题数据集信息。

    上述系统的可选实现方式包括:(1)将该系统集成到现有数据目录门户中,使得现
    有主题搜索结果数据集(即主题数据集)过滤技术中包含基于数据质量的多层分面过滤功
    能;(2)该系统单独实现,作为现有数据目录门户的一种增值服务,实现对数据目录门户的
    主题搜索结果数据集(即主题数据集)进行基于数据质量的多层分面过滤。

    由上述技术方案可以理解的是,本发明是基于本说明书的“背景技术”中所述的多
    个相关技术领域的技术背景和技术发展趋势提出的,提供了一种基于数据质量的主题数据
    集分面过滤技术方案。由于数据质量模型用于“establish data quality requirements,
    define data quality measures,or plan and perform data quality evaluations.(建
    立数据质量需求,定义数据质量度量,或计划和实施数据质量评价)”(摘自:《ISO/IEC
    25012数据质量模型》国际标准的技术文档),因此,基于数据质量的分面过滤技术在本质上
    不同于传统的分面过滤技术,必须以数据质量模型(典型地,三层数据质量层次模型)为基
    础。本发明技术方案的最突出的实质性特点是基于数据质量的分面过滤方法与过程是以数
    据质量模型(典型地,三层数据质量层次模型)为基础的。为此,必须首先定义一个与三层数
    据质量层次模型相对应的数据质量分面分类层次,在此基础上再根据用户搜索数据目录所
    产生的主题数据集物化出一个特定主题的数据质量分面分类层次,最后根据用户在特定主
    题的数据质量分面分类层次的树形结构中选择的数据质量分面对主题数据集进行多层分
    面过滤(即在多个质量类别、多个质量维、多个质量度量指标上进行分面过滤);本发明技术
    方案的其他突出的实质性特点还包括:本发明技术方案适用于Web数据目录与元数据、数据
    质量管理等领域的最新技术标准与规范,等等。

    下面通过一个优选的实施例来进一步描述本发明技术方案的具体实施方式。

    不失一般性,本实施例的数据目录门户选用美国政府开放数据门户DATA.GOV
    (https://www.data.gov),该数据门户的数据目录及数据集的元数据是用W3C制定的DCAT
    数据目录词汇标准(参见:本说明书的“背景技术”)来描述的。

    由于DATA.GOV目前暂未增设数据集的数据质量元数据,因此本实施例用DCAT的扩
    充——W3C的Web数据最佳实践(DWBP)工作组制定的DQV数据质量词汇技术规范(参见:本说
    明书的“背景技术”)来建模与描述DATA.GOV中的数据质量元数据。如图4所示,DQV定义了一
    种三层的数据质量模型:质量类别(dqv:Category类)、质量维(dqv:Dimension类)和质量度
    量指标(dqv:Metric类);用这些本体类的实例可为DATA.GOV构建一个实际使用的三层数据
    质量模型。不失一般性,如图4所示以及表2所列,本实施例选用DQV技术规范中推荐的ISO数
    据质量模型国际标准ISO/IEC 25012(参见:本说明书的“背景技术”)中的部分质量类别和
    部分质量维来构建DATA.GOV数据质量模型的质量类别和质量维,并选用Radulovic等人提
    出的LDQM质量模型中一些质量度量指标(参见:本说明书的“背景技术”)来构建DATA.GOV数
    据质量模型的质量度量指标。

    表2:优先实施例中数据质量分面分类层次所对应的DATA.GOV数据质量层次模型



    使用质量度量指标定义的质量度量可以是包括整型(interger)、十进制型
    (decimal)、浮点型(float)、双精度浮点型(double)等在内的各种数值型值和布尔型
    (boolean)值。以上述数据质量层次模型为基础,按表2中质量度量指标上的度量值类型和
    值域为要求,为DATA.GOV数据目录门户中部分数据集(详见后文中表3)定义了若干质量度
    量(详见后文中表4,其中,双精度浮点型值只给出了小数点后三位,以便下文实施例中的质
    量度量值表示和屏幕显示更为简洁),假设其名空间为“hhu:”或“ex:”(不同的名空间表明
    了有不同的机构或个人使用上述数据质量模型对DATD.GOV中部分数据集进行了质量评
    估)。

    如本说明书的“背景技术”所述,数据目录的DCAT描述、数据集质量元数据的DQV描
    述均为RDF描述,是一种RDF数据。按上述方法为DATA.GOV数据目录门户构建的数据集质量
    元数据(含数据质量模型定义及数据集的质量度量定义)的RDF Turtle格式表示(参见:RDF
    1.1Turtle:Terse RDF Triple Language.W3C Recommendation,25February2014.https://
    www.w3.org/TR/turtle/)示意如下:





    根据本发明的一个方面,一种基于数据质量的主题数据集多层分面过滤方法,如
    图1所示,包括如下步骤:

    S1:根据数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次H,
    具体包括以下步骤:

    S11:根据数据目录中数据集质量元数据构建一个数据质量分面分类层次H,其数
    据结构的示意如图2中顶部虚线框中所示,具体包括以下步骤:

    S111:定义一个与上述DATA.GOV数据质量层次模型相对应的数据质量分面分类层
    次H,具体如下:

    H=(C,D,M),其中,C是质量类别的线性表,D是质量维的线性表的集合,M是质量度
    量指标的线性表的集合;

    质量类别的线性表C=(iso:inherentDataQuality,iso:systemDependentDataQual
    ity)中元素(质量类别)C1或C2包含三个数据项:质量类别的名称,在该质量类别下有质量度
    量的数据集标识符的线性表,指向该质量类别所包含的质量维的线性表D1或D2的指针;

    C1所指向的质量维的线性表D1=(iso:accuracy,iso:completeness),其中元素
    (质量维)D11或D12包含三个数据项:质量维的名称,在该质量维下有质量度量的数据集标识
    符的线性表,指向该质量维所包含的质量度量指标的线性表M11或M12的指针;

    D11所指向的质量度量指标的线性表M11=(ldqm:averageDatatypeCompatibility,
    ldqm:averageAttributeMisuse),其中元素(质量度量指标)M111或M112包含两个数据项:质
    量度量指标的名称,在该质量度量指标上有质量度量的数据集标识符的线性表(见后文);

    D12所指向的质量度量指标的线性表M12=(ldqm:averageMissingAttributeValue
    s,ldqm:percentageOfUndefinedAttributes),其中元素(质量度量指标)M121或M122包含两
    个数据项:质量度量指标的名称,在该质量度量指标上有质量度量的数据集标识符的线性
    表(见后文);

    同样地,C2所指向的质量维的线性表D2=(iso:availability,iso:portability),
    其中元素(质量维)D21或D22包含三个数据项:质量维的名称,在该质量维下有质量度量的数
    据集标识符的线性表,指向该质量维所包含的质量度量指标的线性表M21或M22的指针;

    D21所指向的质量度量指标的线性表M21=(ldqm:multipleDataFormats,ldqm:
    SPARQLSupport),其中元素(质量度量指标)M211或M212包含两个数据项:质量度量指标的名
    称,在该质量度量指标上有质量度量的数据集标识符的线性表(见后文);

    D22所指向的质量度量指标的线性表M22=(ldqm:termsReuseRatio),其中元素(质
    量度量指标)M221包含两个数据项:质量度量指标的名称,在该质量度量指标上有质量度量
    的数据集标识符的线性表(见后文);

    S112:从DATA.GOV数据目录中获取所有数据集的质量元数据,将其中的质量类别、
    质量维、质量度量指标的名称及相互包含关系相应地赋值至上述数据质量分面分类层次H,
    各层中全部的数据集标识符的线性表均暂置为空。

    S12:持久存储已构建的数据质量分面分类层次H,具体存储格式采用JSON格式的
    文件。

    S2:根据数据质量分面分类层次H和用户搜索数据目录所产生的主题数据集物化
    出一个特定主题的数据质量分面分类层次并将其树形结构在人机交互界面中进行可视
    化,具体包括以下步骤:

    S21:从DATA.GOV数据目录门户的数据集搜索引擎获取用户搜索数据目录所搜索
    到的主题数据集,不失一般性,2016年8月12日使用搜索主题“consumer complaints”(消费
    者投诉)的实际搜索结果(如表3所列)不为空,据此形成一个主题数据集标识符的线性表
    TopicalDatasetIDs=(d1,d2,…,d23);

    表3:优先实施例中数据目录门户DATA.GOV的数据集搜索引擎返回的“consumer
    complaints”(消费者投诉)主题上的搜索结果数据集(按主题相关度降序排列)





    S22:读取已构建并存储的数据质量分面分类层次H;

    S23:根据主题数据集标识符的线性表TopicalDatasetIDs来物化已读取的数据质
    量分面分类层次H,以产生一个特定主题的数据质量分面分类层次其数据结构的示意如
    图2中粗线框图案部分所示,具体包括以下步骤:

    S231:从DATA.GOV数据目录中获取主题数据集标识符的线性表TopicalDatasetIDs
    中所有数据集的质量元数据;

    S232:根据所获取的质量元数据来物化数据质量分面分类层次H的质量度量指标
    层,以产生特定主题的数据质量分面分类层次的质量度量指标层,具体包括:

    首先,对数据质量分面分类层次H中的每个质量度量指标Mijk,若质量元数据中使
    用了该质量度量指标进行质量度量,则将其作为特定主题的数据质量分面分类层次中的
    一个质量度量指标然后,对中每一个这样的质量度量指标从主题数据集标识
    符的线性表TopicalDatasetIDs中找出在该质量度量指标上有质量度量的所有主题数据
    集,将这些主题数据集的标识符赋值给在该质量度量指标上有质量度量的主题数据集标识
    符的线性表并将该线性表中的每个主题数据集在该质量度量指标上
    的所有质量度量的名-值对存储于相应的集合其中1≤t
    ≤线性表的长度,具体如下:

    不失一般性,假设TopicalDatasetIDs中主题数据集d6、d20、d21、d23没有任何质
    量元数据(因此,这4个数据集直接被基于数据质量的过滤方法过滤掉——这是对主题数据
    集的第一种基于数据质量的分面过滤),其他主题数据集在若干质量度量指标上有名空间
    为“hhu:”或“ex:”的质量度量,如表4所列,每个质量度量指标上有质量度量的主题数据集
    标识符的线性表如下:

    <mrow> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>111</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>10</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

    <mrow> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>112</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>17</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

    <mrow> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>121</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>15</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

    <mrow> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>211</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>

    以上每个主题数据集在相应质量度量指标上拥有的所有质量度量名-值对存储于
    集合


    表4:优先实施例中物化出的特定主题的数据质量分面分类层次的质量度量指标
    层及相应有质量度量值的主题数据集





    S233:根据特定主题的数据质量分面分类层次的质量度量指标层来进一步物化
    数据质量分面分类层次H的质量维层,以产生特定主题的数据质量分面分类层次的质量
    维层,具体包括:

    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量度量指标来
    确定数据质量分面分类层次H中包含这些质量度量指标的各个质量维,将它们作为特定主
    题的数据质量分面分类层次中的各个质量维,然后,对中每个这样的质量维通过指
    针所指向的线性表来找出该质量维所包含的所有质量度量指标,并将全部x
    个在这些质量度量指标上有质量度量的主题数据集标识符的线性表
    1≤k≤x进行去除重复元素的合并后,赋值给在该质量维下有质量度量的主题数据集标识
    符的线性表即:

    具体如下:

    <mrow> <mtable> <mtr> <mtd> <mrow> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>11</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>111</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>112</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>10</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>17</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>,</mo> </mrow>

    <mrow> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>12</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>121</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>15</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

    <mrow> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>21</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>211</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>

    S234:根据特定主题的数据质量分面分类层次的质量维层来进一步物化数据质
    量分面分类层次H的质量类别层,以产生特定主题的数据质量分面分类层次的质量类别
    层,具体包括:

    首先,根据特定主题的数据质量分面分类层次中已存在的全部质量维来确定数
    据质量分面分类层次H中包含这些质量维的各个质量类别,将它们作为特定主题的数据质
    量分面分类层次中的各个质量类别,然后,对中每个这样的质量类别通过指针
    所指向的线性表来找出该质量类别所包含的所有质量维,并将全部y个在这些
    质量维下有质量度量的主题数据集标识符的线性表1≤j≤y进行去除
    重复元素的合并后,赋值给在该质量类别下有质量度量的主题数据集标识符的线性表
    即:

    这里具体如下:

    <mrow> <mtable> <mtr> <mtd> <mrow> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mn>1</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>11</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>&cup;</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>12</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>10</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>15</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>17</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>,</mo> </mrow>

    <mrow> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mn>2</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>21</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> <mo>.</mo> </mrow>

    S24:将特定主题的数据质量分面分类层次的树形结构在人机交互界面中进行
    可视化。

    S3:根据用户在上述树形结构中选择的数据质量分面对主题数据集进行基于数据
    质量的过滤,并按用户选定的方式对过滤结果进行排序,具体包括以下步骤:

    S31:根据用户在人机交互界中的上述树形结构中选择的一个用于过滤的数据质
    量分面,产生过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs,具体包括:

    若用户在上述树形结构中选择的数据质量分面是一个质量类别则将在该质量
    类别下有质量度量的主题数据集标识符的线性表中的全部主题数据集
    标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    若用户在上述树形结构中选择的数据质量分面是一个质量维则将在该质量维
    下有质量度量的主题数据集标识符的线性表中的全部主题数据集标识
    符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    若用户在上述树形结构中选择的数据质量分面是一个质量度量指标则将在该
    质量度量指标上有质量度量的主题数据集标识符的线性表中的全部主
    题数据集标识符赋值给过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs;

    不失一般性,举例如下:

    假设用户选择的分面是iso:inherentDataQuality(固有数据质量),则:

    <mrow> <mtable> <mtr> <mtd> <mrow> <mi>F</mi> <mi>i</mi> <mi>l</mi> <mi>t</mi> <mi>e</mi> <mi>r</mi> <mi>e</mi> <mi>d</mi> <mi>T</mi> <mi>o</mi> <mi>p</mi> <mi>i</mi> <mi>c</mi> <mi>a</mi> <mi>l</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mn>1</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>10</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>15</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>17</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>,</mo> <mi>d</mi> <mn>22</mn> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>,</mo> </mrow>

    因此,搜索结果的23个主题数据集中除以上数据集外的其他数据集因在该质量类
    别下没有质量度量值(即用户无法判断这些主题数据集是否符合其质量要求)而被过滤掉
    了;

    假设用户选择的分面是iso:accuracy(准确性)则:

    <mrow> <mtable> <mtr> <mtd> <mrow> <mi>F</mi> <mi>i</mi> <mi>l</mi> <mi>t</mi> <mi>e</mi> <mi>r</mi> <mi>e</mi> <mi>d</mi> <mi>T</mi> <mi>o</mi> <mi>p</mi> <mi>i</mi> <mi>c</mi> <mi>a</mi> <mi>l</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>D</mi> <mo>^</mo> </mover> <mn>11</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>1</mn> <mo>,</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>7</mn> <mo>,</mo> <mi>d</mi> <mn>8</mn> <mo>,</mo> <mi>d</mi> <mn>10</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>17</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>,</mo> <mi>d</mi> <mn>19</mn> <mo>,</mo> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>,</mo> </mrow>

    因此,搜索结果的23个主题数据集中除以上数据集外的其他数据集因在该质量维
    下没有质量度量值(即用户无法判断这些主题数据集是否符合其质量要求)而被过滤掉了;

    假设用户选择的分面是ldqm:averageAttributeMisuse(平均属性误用),
    则:

    <mrow> <mi>F</mi> <mi>i</mi> <mi>l</mi> <mi>t</mi> <mi>e</mi> <mi>r</mi> <mi>e</mi> <mi>d</mi> <mi>T</mi> <mi>o</mi> <mi>p</mi> <mi>i</mi> <mi>c</mi> <mi>a</mi> <mi>l</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <msub> <mover> <mi>M</mi> <mo>^</mo> </mover> <mn>112</mn> </msub> <mo>.</mo> <mi>L</mi> <mi>i</mi> <mi>s</mi> <mi>t</mi> <mi>O</mi> <mi>f</mi> <mi>D</mi> <mi>a</mi> <mi>t</mi> <mi>a</mi> <mi>s</mi> <mi>e</mi> <mi>t</mi> <mi>I</mi> <mi>D</mi> <mi>s</mi> <mo>=</mo> <mrow> <mo>(</mo> <mi>d</mi> <mn>2</mn> <mo>,</mo> <mi>d</mi> <mn>4</mn> <mo>,</mo> <mi>d</mi> <mn>5</mn> <mo>,</mo> <mi>d</mi> <mn>13</mn> <mo>,</mo> <mi>d</mi> <mn>16</mn> <mo>,</mo> <mi>d</mi> <mn>17</mn> <mo>,</mo> <mi>d</mi> <mn>18</mn> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

    因此,搜索结果的23个主题数据集中除以上数据集外的其他数据集因在该质量度
    量指标上没有质量度量值(即用户无法判断这些主题数据集是否符合其质量要求)而被过
    滤掉了;

    以上三层数据质量分面上的过滤是对主题数据集的第二种基于数据质量的分面
    过滤。

    S32:按用户在人机交互界中选定的排序方式对过滤后主题数据集标识符的线性
    表FilteredTopicalDatasetIDs中的主题数据集进行排序,产生过滤并排序后主题数据集
    标识符的线性表RankedFilteredTopicalDatasetIDs,具体包括:

    若用户选择的数据质量分面是一个质量度量指标则在人机交互界中向用户
    提供对过滤后主题数据集标识符的线性表FilteredTopicalDatasetIDs中的主题数据集按
    质量度量值进行排序的选项:让用户选择在该质量度量指标上的若干个质量度量中使用哪
    个质量度量作为排序依据,并选择升序或降序的排序方式,排序时,数值型质量度量值直接
    比较大小,布尔型质量度量值的比较方式为假小于真,即false<true;

    若用户选择的数据质量分面是一个质量维或质量类别则让用户在数据目录
    门户现有的搜索结果排序方式中选择一种方式对过滤后主题数据集标识符的线性表
    FilteredTopicalDatasetIDs中的数据集进行排序;

    将上述两种情况之一的排序结果赋值给过滤并排序后主题数据集标识符的线性
    表RankedFilteredTopicalDatasetIDs。

    不失一般性,下面我们假定用户选择的分面是ldqm:averageAttributeMisu
    se,并假定用户选择的排序依据是在质量度量指标上的质量度量hhu:avgAttrMisuse,
    并假定用户选择的排序方式是“升序”,通过质量度量值大小比较后的过滤并排序后主题数
    据集标识符的线性表RankedFilteredTopicalDatasetIDs=(d4,d5,d2,d13,d18,d17,
    d16)。

    S4:在人机交互界面中输出过滤并排序后的主题数据集信息,具体包括以下步骤:

    S41:从数据目录中获取过滤并排序后主题数据集标识符的线性表RankedFilter
    edTopicalDatasetIDs中所有主题数据集的部分描述性元数据(如:数据集的标题、描述信
    息、数据格式、发布者、发布日期等)和部分访问元数据(如:数据集的访问及下载网址等);

    S42:将已获取的上述元数据按过滤并排序后主题数据集标识符的线性表
    RankedFilteredTopicalDatasetIDs中的主题数据集顺序在人机交互界面中依次呈现,这
    里同时呈现各主题数据集在以上质量度量指标上的用于排序的质量度量的值。举例说明,
    如图5所示,假设某用户特定数据质量要求是“数据集的平均属性误用必须小于1%(即
    0.010)”,那么,在RankedFilteredTopicalDatasetIDs中只有数据集d4(其质量度量值为
    0.005)和d5(其质量度量值为0.009)满足该用户的以上数据质量要求,因此,除d4和d5外的
    其他数据集由于其质量度量值不符合用户的质量要求而再次被过滤掉了——这是对主题
    数据集的第三种基于数据质量的分面过滤。

    根据本发明的另一个方面,一种基于数据质量的主题数据集多层分面过滤系统,
    如图3所示,包括:数据质量分面分类层次的构建并存储模块、数据质量分面分类层次的物
    化和可视化模块、基于数据质量的数据集过滤模块、主题数据集过滤并排序结果的输出模
    块、人机交互界面。

    作为上述优先实施例的延续,我们实现了上述一种基于数据质量的主题数据集多
    层分面过滤系统的一个原型。由于将本系统集成到现有数据目录门户中的实现方式比本系
    统单独实现的方式更为简单,不失一般性,该系统原型采用了“单独实现”方式,作为数据目
    录门户的一种增值服务,实现数据目录门户的主题搜索结果数据集(即主题数据集)的基于
    数据质量的多层分面过滤。该系统原型的主要实现技术简述如下:

    该系统原型被设计并实现成一个采用模型–视图–控制器(MVC)软件体系结构模式
    的Web应用,其软件使用Java平台企业版(Java EE)8.0(参见:http://www.oracle.com/
    technetwork/java/javaee/overview/index.html)和开源的语义网应用开发Java框架
    Apache Jena中的核心RDF API(参见:http://jena.apache.org/documentation/rdf/
    index.html)开发,并部署于Apache Tomcat 7.0.55(参见:http://tomcat.apache.org/)
    Web应用服务器。

    上述一种基于数据质量的主题数据集多层分面过滤系统中各个模块的功能及其
    在系统原型中的实现技术简述如下:

    数据质量分面分类层次的构建并存储模块用于实现本发明方法中的步骤S1:根据
    数据目录中数据集质量元数据构建并存储一个数据质量分面分类层次。在系统原型中的实
    现技术如下:定义一个与三层数据质量层次模型相对应的数据质量分面分类层次时,每一
    层都用Java数组表(ArrayList)来实现,下层的数组表作为其直接上层数组表元素中的一
    个属性,每个数组表元素还包含两个属性:质量分面名称和对应的数据集标识符的线性表;
    如果数据目录门户提供数据集元数据的SPARQL端点(如:欧盟开放数据门户的SPARQL端点
    http://data.europa.eu/euodp/en/linked-data),那么可通过SPARQL查询(参见:本说明
    书的“背景技术”)获取RDF格式的质量元数据,否则,可通过HTTP请求获取RDF格式的质量元
    数据(如:DATA.GOV数据目录门户提供数据集元数据的JSON-LD文档,即一种RDF文档);利用
    Apache Jena中的核心RDF API解析已获取的RDF格式的质量元数据,并通过Java程序实现
    将质量元数据中的质量类别、质量维、质量度量指标的名称及相互包含关系相应地赋值至
    上述数据质量分面分类层次,各层中全部的数据集标识符的线性表均暂置为空;以JSON格
    式的文件(*.json)持久存储已构建的数据质量分面分类层次。

    数据质量分面分类层次的物化和可视化模块用于实现本发明方法中的步骤S2:根
    据数据质量分面分类层次和用户搜索数据目录所产生的主题数据集物化出一个特定主题
    的数据质量分面分类层次,并将其树形结构在人机交互界面中进行可视化。在系统原型中
    的实现技术为:通过HTTP请求从数据目录门户的数据集搜索引擎获取用户搜索数据目录所
    搜索到的主题数据集,据此形成一个主题数据集标识符的线性表;读取已构建并存储的数
    据质量分面分类层次JSON格式的文件;使用与数据质量分面分类层次的构建并存储模块中
    相同的方法从数据目录中获取主题数据集标识符的线性表中所有数据集的RDF格式的质量
    元数据,并利用Apache Jena中的核心RDF API解析已获取的RDF格式的质量元数据;通过
    Java程序产生一个特定主题的数据质量分面分类层次;通过在JavaServer Pages(JSP)页
    面中加载Bootstrap前端开发框架(参见:http://getbootstrap.com/)和JavaScript
    jQuery库(参见:https://jquery.com/)将特定主题的数据质量分面分类层次的树形结构
    在人机交互界面中进行可视化。

    基于数据质量的数据集过滤模块用于实现本发明方法中的步骤S3:根据用户在上
    述树形结构中选择的数据质量分面对主题数据集进行基于数据质量的过滤,并按用户选定
    的方式对过滤结果进行排序。在系统原型中的实现技术为:使用JavaScript(参见:
    https://developer.mozilla.org/en-US/docs/Web/JavaScript)的事件驱动编程(event-
    driven programming)技术来实现对用户在数据质量分面分类层次树上的鼠标点击事件的
    监听与响应,通过Java程序从特定主题的数据质量分面分类层次中获取用户鼠标点击选取
    的分面(质量类别或质量维或质量度量指标)所对应的数据集标识符的线性表,将其中的数
    据集标识符赋值给过滤后主题数据集标识符的线性表;若用户选择的数据质量分面是一个
    质量度量指标,则在人机交互界中向用户提供对过滤后主题数据集标识符的线性表中的数
    据集按质量度量值进行排序的选项,否则,按数据目录门户现有的搜索结果排序方式对过
    滤后主题数据集标识符的线性表中的数据集进行排序(注:主题相关度顺序就是搜索引擎
    返回的搜索结果中的顺序;数据集发布/更新日期等信息可以从数据集元数据中获取,然后
    据此对数据集进行排序);将排序结果赋值给过滤并排序后主题数据集标识符的线性表。

    主题数据集过滤并排序结果的输出模块用于实现本发明方法中的步骤S4:在人机
    交互界面中输出过滤并排序后的主题数据集信息。在系统原型中的实现技术为:使用与数
    据质量分面分类层次的构建并存储模块中相同的方法从数据目录中获取过滤并排序后主
    题数据集标识符的线性表中所有数据集的标题、描述、数据格式、发布者、发布日期等描述
    性元数据和数据集的访问及下载网址等访问元数据(均为RDF格式),并利用Apache Jena中
    的核心RDF API进行解析,最后通过Java程序将解析后的元数据按数据集排序结果的顺序
    在人机交互界面中呈现(若用于过滤的数据质量分面是一个质量度量指标,则同时呈现各
    数据集在该质量度量指标上的用于排序的质量度量值)。

    人机交互界面用于实现用户与该系统之间的人机交互,包括:用户在该界面中输
    入数据集搜索主题、系统在该界面中将一个特定主题的数据质量分面分类层次的树形结构
    进行可视化、用户在上述可视化的树形结构中选择一个用于过滤的数据质量分面并选定主
    题数据集的排序方式、系统在该界面中呈现过滤并排序后的主题数据集信息。在系统原型
    中的实现技术为:人机交互界面中的内容来自JSP页面;使用层叠样式表(Cascading Style
    Sheets,CSS)(参见:http://www.w3.org/TR/CSS2/)来定义JSP页面在浏览器中的显示样
    式;通过在JSP页面中加载Bootstrap前端开发框架和JavaScript jQuery库将特定主题的
    数据质量分面分类层次的树形结构在人机交互界面中进行可视化;使用JavaScript的事件
    驱动编程技术来实现对用户在数据质量分面分类层次树上的鼠标点击事件的监听与响应。

    作为一个具体应用案例,使用上述已实现的系统原型来运行前述优选实施例,该
    系统原型实现了预期功能。图5示出了该系统原型输出前述优选实施例中一个主题数据集
    过滤结果的人机交互界面截屏。以这个数据集过滤结果为例,假设某个用户特定数据质量
    要求是“数据集的平均属性误用(ldqm:averageAttributeMisuse)必须小于1%(即
    0.010)”,那么,根据以上主题数据集过滤结果,只有数据集d4(平均属性误用的质量度量值
    为0.005)和d5(平均属性误用的质量度量值为0.009)是满足该用户的以上数据质量要求
    的,于是系统原型为该用户筛选出了数据集d4和d5,即使其他数据集的“主题相关度”比d3
    和d5要高,该用户也不会选用它们(例如:数据集d2的质量度量值大于0.010,不满足该用户
    的质量要求;数据集d1和d3在该质量度量上无值,用户无法确定数据集是否满足其质量要
    求)。以上充分表明了本发明技术方案克服了现有主题数据集过滤技术忽视数据质量的弊
    端,方便用户筛选出符合其特定数据质量要求的主题数据集。

    以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人
    员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应
    视为本发明的保护范围。

    关 键  词:
    基于 数据 质量 主题 多层 过滤 方法 系统
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:基于数据质量的主题数据集多层分面过滤方法与系统.pdf
    链接地址:https://www.zhuanlichaxun.net/p-6024587.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1