找回密码
 欢迎注册
搜索
热搜: 活动 交友 discuz
查看: 5434|回复: 19

开源项目1:在线散件配机决策系统

[复制链接]
发表于 2007-5-14 15:50:55 | 显示全部楼层 |阅读模式
项目目的:

实现一个根据消费者需求,在线提供电脑硬件采购解决方案的查询系统。可以应用于所有电脑硬件采购相关的IT网站。

项目描述:

第一步:

经过协商,考虑到背景问题,和模型难易程度,我们准备第一步还是集体学习如何进行OWL建模。

内容:我们准备建立一个计算机硬件模型,包括硬盘,内存,CPU,显示器,主板等,比如computer hasHarddisk Harddisk。

范围:只做兼容机的配置,描述物理性能,不牵涉到兼容机品牌范围。以练手为目的,不要求模型全面包括所有的硬件,复杂的属性。

版本:为OWL DL版本,请在protege新建文件的时候,选择OWL DL。

命名空间:url采用论坛的做base,比如:http://ontology.miforum.org/compatible-pc/monitor

电脑硬件知识参考文档:来自于中关村在线:http://zol.com.cn/

学习建模文档:来自于项目资源列表帖子。

负责人员:每人负责一个硬件分支,建立自己的owl file.最终模型将是import大家独立模型的合成版本。
small potato: 硬盘
Danel Chen:内存条
SemTek:显示器
Laotao:主板
南京猿人:CPU

目前还有显卡、键盘、鼠标、机箱,电源等空缺,也欢迎论坛里面其他的同道参与。

第二步,我们将集体学习OWL查询语言SPARQL

从而能把大家在模型里面的信息,能够查询出来。

第三步,我们将实现一个简单的查询界面:包括问题和答案,问题如:您想买什么样的电脑,答案为:智能办公型,家庭影院型等.

然后根据用户选择,系统展现一个硬件配置答案。

项目周期:计划本周末完成第一步。

第二第三步的细节,将在第一步完成之后,讨论公布。

如果有问题或者建议,请跟贴。

[ 本帖最后由 smallpotato 于 2007-5-15 06:44 编辑 ]
发表于 2007-5-14 16:39:32 | 显示全部楼层
呵呵~~~好像还有个光驱。
发表于 2007-5-15 07:34:49 | 显示全部楼层

关于一些标准单位

在做owl中发现有些标准单位是每个owl中都需要用到的,比如gige byte, M,等建议建立一个简单的度量衡的owl,让大家引用,现在大家可能认为80的硬盘就是G,说不定将来就要变,我还清楚地记得以前为了让基本内存640k不被占用,尽量使用上位内存的时候呢。
还是就算了?
 楼主| 发表于 2007-5-15 07:59:36 | 显示全部楼层
sweet.jpl.nasa.gov/ontology/units.owl

网上有一些UNIT ontology,比如上面这个。你可以下载下来,import进入你的模型,使用上面的unit. 如果没有,你也可以根据他的设计模式,扩充新的unit.
发表于 2007-5-15 08:16:25 | 显示全部楼层
上面那个owl, protege打开会出错,我在网上找了另外一个,虽然结构简单,但是我们需要的基本都有了,请大家下载这个吧。
http://www.cs.kuleuven.be/~distr ... S/2005/01/Units.owl
 楼主| 发表于 2007-5-15 12:31:44 | 显示全部楼层
鲁汶这个计算机单位比较全,不过这个缺少NASA那个大剂量单位和相应的小剂量单位转换的模型机制。比如:千克=1000g。或许还有更好的,或许我们自己以后写一个。

目前,大家还是统一用鲁汶的把。

要么找几篇文章,给大家讲讲,如何把单位建到模型里面去?我们也统一一下计量单位的建模方法?

[ 本帖最后由 南京猿人 于 2007-5-16 06:23 编辑 ]
发表于 2007-5-17 12:56:05 | 显示全部楼层
考虑到鲁汶的unit都是用class建立的,没法在instance上引用。还是沿用了nasa的那个unit模型,然后自己作了修改。,在protege出错的原因是没有baseurl,把defaulturl的也当作baseurl也就可以打开了,附件中有添加后的unit.owl,需要import进来,这个owl和xml schema有相似性,我就先抛砖引玉了。
harddisk.rar (3.63 KB, 下载次数: 10)

[ 本帖最后由 smallpotato 于 2007-5-17 13:13 编辑 ]
发表于 2007-5-18 15:56:16 | 显示全部楼层

主板

引用了一下猿人的CPU。

<?xml version="1.0"?>
<rdf:RDF
    xmlns="http://bbs.miforum.org/compatible-computer/mainboard.owl#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
  xml:base="http://bbs.miforum.org/compatible-computer/mainboard.owl">
  <owl:Ontology rdf:about="">
    <owl:imports rdf:resource="http://bbs.miforum.org/compatible-computer/mainboard.owl"/>
    <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
    >Created by laotao</owl:versionInfo>
  </owl:Ontology>
  <owl:Class rdf:ID="Mainboard">
        <rdfs:label xml:lang="en">Mainboard</rdfs:label>
        <rdfs:label xml:lang="cn">主板</rdfs:label>
  </owl:Class>
  <owl:Class rdf:ID="ComputerPlatform">
        <rdfs:label xml:lang="en">Computer Platform</rdfs:label>
        <rdfs:label xml:lang="cn">计算机平台</rdfs:label>
  </owl:Class>
  <owl:Class rdf:ID="Adapter">
          <rdfs:label xml:lang="en">Adapter</rdfs:label>
        <rdfs:label xml:lang="cn">适配器</rdfs:label>
  </owl:Class>
  <owl:Class rdf:ID="Bus">
          <rdfs:label xml:lang="en">Bus</rdfs:label>
        <rdfs:label xml:lang="cn">总线</rdfs:label>
  </owl:Class>
  <owl:DataTypeProperty rdf:ID="Name">
    <rdfs:domain>
      <owl:Class>
        <owl:unionOf rdf:parseType="Collection">
          <owl:Class rdf:about="#Mainboard"/>
          <owl:Class rdf:about="#ComputerPlatform"/>
          <owl:Class rdf:about="#Adapter"/>
          <owl:Class rdf:about=”#Bus"/>
         </owl:unionOf>
      </owl:Class>
    </rdfs:domain>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DataTypeProperty>
  <owl:ObjectProperty rdf:ID="AdaptableCPU">
    <rdfs:domain rdf:resource="#Mainboard"/>
    <rdfs:range rdf:resource="http://bbs.miforum.org/compatible-computer/CPU.owl#"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="AdaptableToPlatform">
    <rdfs:range rdf:resource="#ComputerPlatform"/>
    <rdfs:domain rdf:resource="#Mainboard"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="HasIntegratedChips">
    <rdfs:range rdf:resource="#Adapter"/>
    <rdfs:domain rdf:resource="#Mainboard"/>
  </owl:ObjectProperty>
  <owl:ObjectProperty rdf:ID="hasBus">
    <rdfs:range rdf:resource="#Bus"/>
    <rdfs:domain rdf:resource="#Mainboard"/>
  </owl:ObjectProperty>
</rdf:RDF>

[ 本帖最后由 laotao 于 2007-5-30 15:10 编辑 ]
 楼主| 发表于 2007-5-19 05:34:09 | 显示全部楼层
个人做owl的一些体会,和大家分享。参考于Uschold and king’s method,from pg 115 Ontology Engineering.

1. Identify purpose: 明确目标:自己需要做一个什么样的owl,是用来定义一个domain,还是一个Task.

2. Building:
        a. Capture completeness:
                i. 使用Swoogle: http://swoogle.umbc.edu/ 这是一个owl搜索引擎,如果别人开发过类似的,或者雷同的owl,你都可以检索到,而且查看每个检索到的owl的namespace.如果有现成的,或只是需要小修改一下的,何必重头再来呢。这也体现了owl得重用性。
                ii. Wiki 或者其他的知识参照物,比如UMLS,从其中retrieve出来自己需要的词汇,并按照大家已经约定俗成的一些结构,做一个taxonomy。比如:性别:男,女。
        b. Coding:可以给每个class or instance一些非自由文本的索引,编码,以利于以后机器的处理。
        c. Integrating:把你做的结构,连贯的结合起来。根据你的需要,细化它,参考到严密性,推理的合理性等。

3. Evaluation:呵呵,这个比较复杂,下次再说。不过我们眼前可以用到的,就是Debug:用推理引擎跑一遍,看看是否符合。

4. Documentation:既然代码写完了,注释总要有的,好的注释,可以让别人更好的理解你的架构,会让你的owl流行起来。也为和其他owl的集成,提供了帮助。

[ 本帖最后由 南京猿人 于 2007-5-19 05:38 编辑 ]
 楼主| 发表于 2007-5-21 15:47:17 | 显示全部楼层
呵呵,这两天长智齿,人没聪明多少,光记着牙痛了。

上周作业,主要和大家一起学习一些概念,比如什么是Class,instance,property 什么是restriction,什么是owl inference.具体的定义,请参照学习文档。


CPU owl描述:

关于Class:我也做了一个CPU Class,分为两类,AMD和Intel。也建了两款CPU,一个AMD,一个Intel。也包括了CPU的一些属性,比如速度,总线带宽。
我也用了一些单位(unit),我建了一个unit class.

关于property的domain and range: 我的模型中包括hasProcesserSpeed,考虑到具有processorSpeed的Class,除了CPU, 还有显卡,就没写domain,写个range。

关于restriction:

当需要限定这个class下面的instance必须具有什么属性的时候,我用了 cardinality 的restriction. 比如: "ProcessorSpeed hasProcessorSpeed exactly 1", 用来表达:每个CPU只能有一个速度,不可以配置两个速度。

也用了Value estriction:(hasFrontSideBus has FrontSideBus_1) and (hasL2CacheSize has L2CacheSize_1) and (hasProcessorSpeed has ProcessorSpeed_1)

表达:CPU 必须具备上面三个配置,才能算是Athlon_64_Processor_3500。

CPU owl应用:

1. 以后绑定主板的owl,用户选择的时候,就可以根据CPU来自动配置主板。

2. 由于用了一些限制,通过推理(inference),可以根据一个未知分类CPU的配置(UndefinedCPU_1),来判断这个未知的CPU是intel还是AMD.当你运行inference,系统会反馈,UndefinedCPU_1,是属于Athlon_64_Processor_3500。因此,用户拿到一个CPU,知道该CPU的配置,但是不知道品牌。通过查询我们的模型,可以获知其他本来未知的东西,比如品牌。这个东西,以后可以用在患者从许多症状到疾病分类的推理上。

欢迎大家提意见。等所有同志把作业交了之后,我们开始集成所有的模型。希望大家的模型里面,都包括两个可以选择的配置。这样,用户就可以选择,至少两个配置。

学习过程中如果有问题,也请提出。

[ 本帖最后由 南京猿人 于 2007-5-21 16:03 编辑 ]

CPU.rar

2.17 KB, 下载次数: 12

发表于 2007-5-21 18:16:24 | 显示全部楼层
差个内存电源这个PC就能用了,看来我要加油了。今天晚上努力,哪怕是个不好用的呢。
发表于 2007-5-23 21:44:12 | 显示全部楼层
内存:

  1. <?xml version="1.0"?>
  2. <rdf:RDF
  3.     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  4.     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
  5.     xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
  6.     xmlns:owl="http://www.w3.org/2002/07/owl#"
  7.     xmlns="http://ontology.miforum.org/compatible-pc/memeory.owl#"
  8.   xml:base="http://ontology.miforum.org/compatible-pc/memeory.owl">
  9.   <owl:Ontology rdf:about=""/>
  10.   <owl:Class rdf:ID="MemeoryChip">
  11.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  12.     >A integrant of Compatible PC</rdfs:comment>
  13.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  14.     >0.1</owl:versionInfo>
  15.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  16.   </owl:Class>
  17.   <owl:Class rdf:ID="Memeory">
  18.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  19.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  20.     >0.1</owl:versionInfo>
  21.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  22.     >A integrant of Compatible PC</rdfs:comment>
  23.   </owl:Class>
  24.   <owl:Class rdf:ID="Pin">
  25.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  26.     >A integrant of Compatible PC</rdfs:comment>
  27.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  28.     >0.1</owl:versionInfo>
  29.     <rdfs:subClassOf>
  30.       <owl:Class rdf:ID="MemeoryBoardAttibute"/>
  31.     </rdfs:subClassOf>
  32.   </owl:Class>
  33.   <owl:Class rdf:ID="WorkFrequency">
  34.     <rdfs:subClassOf>
  35.       <owl:Class rdf:ID="MemeoryChipAttribute"/>
  36.     </rdfs:subClassOf>
  37.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  38.     >0.1</owl:versionInfo>
  39.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  40.     >A integrant of Compatible PC</rdfs:comment>
  41.   </owl:Class>
  42.   <owl:Class rdf:about="#MemeoryBoardAttibute">
  43.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  44.     >A integrant of Compatible PC</rdfs:comment>
  45.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  46.     >0.1</owl:versionInfo>
  47.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  48.   </owl:Class>
  49.   <owl:Class rdf:about="#MemeoryChipAttribute">
  50.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  51.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  52.     >0.1</owl:versionInfo>
  53.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  54.     >A integrant of Compatible PC</rdfs:comment>
  55.   </owl:Class>
  56.   <owl:Class rdf:ID="ChipType">
  57.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  58.     >A integrant of Compatible PC</rdfs:comment>
  59.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  60.     >0.1</owl:versionInfo>
  61.     <rdfs:subClassOf rdf:resource="#MemeoryChipAttribute"/>
  62.   </owl:Class>
  63.   <owl:Class rdf:ID="PBC">
  64.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  65.     >A integrant of Compatible PC</rdfs:comment>
  66.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  67.     >0.1</owl:versionInfo>
  68.     <rdfs:subClassOf rdf:resource="#MemeoryBoardAttibute"/>
  69.   </owl:Class>
  70.   <owl:Class rdf:ID="Capability">
  71.     <rdfs:subClassOf rdf:resource="#MemeoryChipAttribute"/>
  72.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  73.     >0.1</owl:versionInfo>
  74.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  75.     >A integrant of Compatible PC</rdfs:comment>
  76.   </owl:Class>
  77.   <owl:Class rdf:ID="MemeoryBoard">
  78.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  79.     >A integrant of Compatible PC</rdfs:comment>
  80.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  81.     >0.1</owl:versionInfo>
  82.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  83.   </owl:Class>
  84.   <owl:ObjectProperty rdf:ID="hasMemeoryBoard">
  85.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  86.     >0.1</owl:versionInfo>
  87.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  88.     >A integrant of Compatible PC</rdfs:comment>
  89.     <rdfs:domain rdf:resource="#Memeory"/>
  90.   </owl:ObjectProperty>
  91.   <owl:ObjectProperty rdf:ID="hasMemeoryChip">
  92.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  93.     >A integrant of Compatible PC</rdfs:comment>
  94.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  95.     >0.1</owl:versionInfo>
  96.     <rdfs:domain rdf:resource="#Memeory"/>
  97.   </owl:ObjectProperty>
  98.   <ChipType rdf:ID="DDR">
  99.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  100.     >0.1</owl:versionInfo>
  101.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  102.     >A integrant of Compatible PC</rdfs:comment>
  103.   </ChipType>
  104.   <ChipType rdf:ID="DDRII">
  105.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  106.     >0.1</owl:versionInfo>
  107.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  108.     >A integrant of Compatible PC</rdfs:comment>
  109.   </ChipType>
  110. </rdf:RDF>
复制代码
发表于 2007-5-23 21:55:51 | 显示全部楼层
显示器[Monitor]这里不管这种描述方法是否合适或者妥当,先简单的进行描述

  1. <?xml version="1.0"?>
  2. <rdf:RDF
  3.     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  4.     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
  5.     xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
  6.     xmlns:owl="http://www.w3.org/2002/07/owl#"
  7.     xmlns="http://ontology.miforum.org/compatible-pc/monitor.owl#"
  8.   xml:base="http://ontology.miforum.org/compatible-pc/monitor.owl">
  9.   <owl:Ontology rdf:about="">
  10.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  11.     >Created with TopBraid Composer</owl:versionInfo>
  12.   </owl:Ontology>
  13.   <owl:Class rdf:ID="CRTMonitor">
  14.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  15.     >A integrant of Compatible PC</rdfs:comment>
  16.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  17.     >0.1</owl:versionInfo>
  18.     <rdfs:subClassOf>
  19.       <owl:Class rdf:ID="Monitor"/>
  20.     </rdfs:subClassOf>
  21.   </owl:Class>
  22.   <owl:Class rdf:ID="Power">
  23.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  24.     >A integrant of Compatible PC</rdfs:comment>
  25.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  26.     >0.1</owl:versionInfo>
  27.     <rdfs:subClassOf>
  28.       <owl:Class rdf:ID="MonitorAttribute"/>
  29.     </rdfs:subClassOf>
  30.   </owl:Class>
  31.   <owl:Class rdf:about="#MonitorAttribute">
  32.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  33.     >A integrant of Compatible PC</rdfs:comment>
  34.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  35.     >0.1</owl:versionInfo>
  36.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  37.   </owl:Class>
  38.   <owl:Class rdf:about="#Monitor">
  39.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  40.     >A integrant of Compatible PC</rdfs:comment>
  41.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  42.     >0.1</owl:versionInfo>
  43.     <rdfs:subClassOf rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  44.   </owl:Class>
  45.   <owl:Class rdf:ID="MonitorDimension">
  46.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  47.     >A integrant of Compatible PC</rdfs:comment>
  48.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  49.     >0.1</owl:versionInfo>
  50.     <rdfs:subClassOf rdf:resource="#MonitorAttribute"/>
  51.   </owl:Class>
  52.   <owl:Class rdf:ID="MonitorInputType">
  53.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  54.     >A integrant of Compatible PC</rdfs:comment>
  55.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  56.     >0.1</owl:versionInfo>
  57.     <rdfs:subClassOf rdf:resource="#MonitorAttribute"/>
  58.   </owl:Class>
  59.   <owl:Class rdf:ID="LCDMonitor">
  60.     <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  61.     >A integrant of Compatible PC</rdfs:comment>
  62.     <owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string"
  63.     >0.1</owl:versionInfo>
  64.     <rdfs:subClassOf rdf:resource="#Monitor"/>
  65.   </owl:Class>
  66. </rdf:RDF>
复制代码


帮semtek交作业。班门弄斧了。
发表于 2007-5-24 13:09:39 | 显示全部楼层
Daniel, 多谢了 ;-)
发表于 2007-5-24 15:54:15 | 显示全部楼层

关于unit的表示

在cpu.owl中,由于引入了单位,CPU的一些属性都必须表示为class, 如:L2CacheSize,ProcessorSpeed,这显得有点不直观。
如果把l2CacheSize表示为属性,单位的其他表示方法有:
1) 属性带上单位: 如l2CacheSize_KB, l2CacheSize_MB, 但扩展性不好
2)数据类型带上单位: 如:(Athlon_64_Processor_3500 l2CacheSize 512^^KB_INTEGER) 其中,KB_INTEGER是一个用户自定义的integer数据类型,表示作为KB的整数,不太清楚Jena是否支持。
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

快速回复 返回顶部 返回列表