小编Jos*_*lor的帖子

如何使用Jena的rdfs:label替换lastIndexOf URI更改?

我有以下rdf:

<rdf:Description rdf:about="http://www.territorio.provincia.tn.it/geodati/resource/corsi_d_acqua_naturali_e_artificiali/4491">
    <geontology:length rdf:datatype="http://www.w3.org/2001/XMLSchema#double">1831.99493639</geontology:length>
    <rdfs:label xml:lang="it">Fiume chiese</rdfs:label>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
    <rdf:type rdf:resource="http://www.territorio.provincia.tn.it/geodati/resource/corsi_d_acqua_naturali_e_artificiali"/>
    <rdfs:label xml:lang="it">4491</rdfs:label>
    <geo:geometry rdf:resource="http://www.territorio.provincia.tn.it/geodati/resource/corsi_d_acqua_naturali_e_artificiali_4491"/>
  </rdf:Description>
Run Code Online (Sandbox Code Playgroud)

我的目标是使用rdfs:label和rds:label更改uri更改的lastpart,所有时间只包含字符串.在rdf文件中,您看到URI的最后一部分是整数,所以我想用rdfs:label更改整数.所以预期产量如下:

   <rdf:Description rdf:about="http://www.territorio.provincia.tn.it/geodati/resource/corsi_d_acqua_naturali_e_artificiali/Fiume chiese">
        <geontology:length rdf:datatype="http://www.w3.org/2001/XMLSchema#double">1831.99493639</geontology:length>
        <rdfs:label xml:lang="it">Fiume chiese</rdfs:label>
        <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
        <rdf:type rdf:resource="http://www.territorio.provincia.tn.it/geodati/resource/corsi_d_acqua_naturali_e_artificiali"/>
        <rdfs:label xml:lang="it">4491</rdfs:label>
        <geo:geometry rdf:resource="http://www.territorio.provincia.tn.it/geodati/resource/corsi_d_acqua_naturali_e_artificiali_4491"/>
      </rdf:Description

>
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个问题吗?

rdf jena

1
推荐指数
1
解决办法
77
查看次数

Lisp随机化并使用两个函数从列表拉到另一个列表

好的,所以我是lisp的新手,我一直在研究这个程序几天,了解lisp并研究lisp的某些部分,例如cons,cdr,let,funcall和其他一些部分.我正在尝试创造一种随机分配颜色的糖果机.我已多次运行此代码,起初我花了一段时间才停止获取随机函数的错误,现在它说我对于generate-candy-supply中的缺点有太少的争论.任何人都有任何关于去哪里和任何解决方案的建议?

到目前为止我的代码是......

(defvar candy-color '(yellow red blue green pink orange))

(defun generate-candy-supply (size)
  (if (= 0 size)
    (cons (nth (random (length candy-color)) candy-color))
    (generate-candy-supply (- size 1))))

(defun candy-machine (supply-of-candy)
  (function
    (lambda ()
      (prog1
          (car supply-of-candy)
        (setq supply-of-candy
              (cdr supply-of-candy))))))

(defvar *gummy-bear*
        (candy-machine (generate-candy-supply 4)))

(defvar *easter-egg*
        (candy-machine (generate-candy-supply 6)))

(defun get-candy (machine)
  (funcall machine))
Run Code Online (Sandbox Code Playgroud)

我的任务是......

CANDY计划的原型是

(defun get-candy (machine)
  (funcall machine))
Run Code Online (Sandbox Code Playgroud)

在下面的样本中,我们定义了两个CANDY-MACHINE,一个是有4个糖果的软糖熊机器,另一个是有6个糖果的复活节蛋机器.示例代码如下所示:

(defvar *gummy-bear*
        (candy-machine (generate-candy-supply 4)))
(defvar *easter-egg*
        (candy-machine (generate-candy-supply 6)))
Run Code Online (Sandbox Code Playgroud)

此程序的示例运行如下所示:

[1]> (load 'candy.lisp)
;; Loading file …
Run Code Online (Sandbox Code Playgroud)

lisp clisp common-lisp

1
推荐指数
1
解决办法
157
查看次数

获取方案列表中最大的数字

我不明白为什么我的获取最大数字的函数不起作用。如果我正确地思考这一点,如果第一个原子小于第二个原子,那么您调用该函数减去列表中的第一个原子,否则您将使用列表的其余部分构造第一个原子,即最大的原子。相关代码:

(define (getlargest a_list)
  (cond
    ((null? a_list) '())
    ((< (car a_list) (cadr a_list)) (getlargest (cdr a_list)))
    (else (cons (car a_list) (getlargest(cdr a_list))))))
Run Code Online (Sandbox Code Playgroud)

scheme racket

1
推荐指数
1
解决办法
3万
查看次数

Eager-Future2库:Lisp中的并行编程

我正在使用Fedora 19 SBCL.我正在尝试安装eager-future2.我已经下载了源代码,但我无法弄清楚如何安装它.我试过了

(asdf:load-system 'eager-future)
Run Code Online (Sandbox Code Playgroud)

我甚至尝试在源代码中加载单个.lisp文件,但每当我尝试使用pcall函数时,我都会收到错误,"未定义函数PCALL".

lisp common-lisp

1
推荐指数
1
解决办法
180
查看次数

如何在Common Lisp中创建一个多维数组?

是否可以使用列表作为参数调用make-array函数?例如:

(make-array '((length '("a" "b")) (length '("r" "8" "5"))))
Run Code Online (Sandbox Code Playgroud)

返回:

#<TYPE-ERROR expected-type: NUMBER datum: (LENGTH '(...
Run Code Online (Sandbox Code Playgroud)

即使我尝试使用以下命令转换长度的结果:

(coerce (length '(1)) 'number)
Run Code Online (Sandbox Code Playgroud)

它适用于一维数组但不适用于二维数组.

common-lisp

1
推荐指数
1
解决办法
788
查看次数

如何在SPARQL中生成随机数据样本?

是否可以使用SPARQL生成三元组的随机样本?我认为可能是通过SAMPLE函数,但这会返回一个SAMPLE.

我的解决方法是生成一个与OFFSET关键字一起使用的随机数,并使用LIMIT关键字返回所需的样本大小.我只是将偏移的随机数硬编码为200以方便,如下所示:

SELECT *
WHERE {
?s ?p ?o
} 
OFFSET 200 #random number variable
LIMIT 100
Run Code Online (Sandbox Code Playgroud)

有没有更好的建议从SPARQL端点生成100个数据三元组的随机样本?

sparql random-sample

1
推荐指数
1
解决办法
1520
查看次数

如何从列表列表中检索每个"列"中的最小值列表?

所以我有这个小函数在一组3个列表中返回最小值,有没有办法可以把它写得更好看?它对我来说似乎不太好看,但是我可能不知道这意味着什么(我是一个lisp noob)任何提示都会非常感激.

;;;;minimum of 3

(defun minimum-of-3 (list1 list2 list3);returns the minimum value when comparing 3 lists
    (setq minimum-list '())
    (setq mini '())
    (loop for x in list1
            for y in list2
            for z in list3
            do
            (push x mini)
            (push y mini)
            (push z mini)
            (push (apply 'min mini) minimum-list)
            (setq mini '()))

    (reverse minimum-list))
Run Code Online (Sandbox Code Playgroud)

lisp clisp common-lisp

1
推荐指数
1
解决办法
97
查看次数

nltk 无法解释斯坦福解析器输出的语法类别 PRP$

我想根据从斯坦福解析器检索的语法生成句子,但 NLTK 无法解释 PRP$。

from nltk.parse.stanford import StanfordParser
from nltk.grammar import CFG
from nltk.parse.generate import generate

sp=StanfordParser(model_path='/home/aman/stanford_resource/stanford-parser-full-2014-06-16/stanford-parser-3.4-models/edu/stanford/nlp/models/lexparser/englishPCFG.ser.gz',path_to_jar='/home/aman/stanford_resource/stanford-parser-full-2014-06-16/stanford-parser.jar',path_to_models_jar='/home/aman/stanford_resource/stanford-postagger-full-2014-08-27/stanford-postagger-3.4.1.jar')
sent1='He killed the tiger in his pants'
parse_result=sp.raw_parse(sent1)
grammar_list=[]

for p in parse_result:
    l=p.productions()
    grammar_string='\n'.join(map(str,l))
    grammar=CFG.fromstring(grammar_string)
    #grammar_list.append(grammar)
    #for s in generate(grammar,n=3):
    #    print s




ValueError: Unable to parse line 11: NP -> PRP$ NNS
Expected a nonterminal, found: $ NNS
Run Code Online (Sandbox Code Playgroud)

它怎么能工作。我是否应该专门针对这些语法类别指导 nltk。

python nltk stanford-nlp

1
推荐指数
1
解决办法
707
查看次数

exp是一种旧形式的expt吗?

我在Tanimoto的使用Common Lisp的人工智能元素中找到了这个:

; sample formula:
;
;  d     2
;  --   x  + 2x
;  dx

; represented by f0 as follows:
(setf  f0 '(d (+ (exp x 2) (* 2 x)) x))
Run Code Online (Sandbox Code Playgroud)

这难道不该是expt不是exp?这个程序,LEIBNIZ.lispexp在我认为它应该是的许多地方使用expt.我错过了什么?这只是历史问题吗?或者这是一个错误?

common-lisp

1
推荐指数
1
解决办法
492
查看次数

在SPARQL中循环

我有一个简单的问题。当我在DBpedia SPARQL端点上运行此查询时,我得到5个电影URI的列表:

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 

select ?film {
?film rdf:type <http://schema.org/Movie>.

}
limit 5
Run Code Online (Sandbox Code Playgroud)

我正在尝试访问列表中每部电影的所有谓词和对象。我试过了,但是没有用。

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 

select ?film ?p ?o {
?film rdf:type <http://schema.org/Movie>;
      ?p ?o.
}
group by ?film
limit 5
Run Code Online (Sandbox Code Playgroud)

有什么建议吗?

rdf semantic-web sparql dbpedia semantics

1
推荐指数
1
解决办法
1469
查看次数