数値データ型を扱うときにSPARQLに問題があります。 http://cabas.ugr.es:8890/sparql(SPARQLによって文字列として返される数値プロパティ
<http://cabas.ugr.es/ontology/ugr#hombres>
a owl:DatatypeProperty, owl:FunctionalProperty, rdf:Property ;
rdfs:label
"hombres"@es,
"men"@en ;
rdfs:comment
"Número de estudiantes hombres."@es,
"Number of male students."@en ;
rdfs:range xsd:nonNegativeInteger ;
rdfs:isDefinedBy <http://cabas.ugr.es/ontology/ugr#> ;
owl:sameAs <http://cabas.ugr.es/ontology/ugr#hombres> ;
owl:inverseOf <http://cabas.ugr.es/ontology/ugr#mujeres> ;
ns1:term_status "stable" .
<http://cabas.ugr.es/ontology/ugr#mujeres>
a owl:DatatypeProperty, owl:FunctionalProperty, rdf:Property ;
rdfs:label
"mujeres"@es,
"women"@en ;
rdfs:comment
"Número de estudiantes mujeres."@es,
"Number of female students."@en ;
rdfs:range xsd:nonNegativeInteger ;
rdfs:isDefinedBy <http://cabas.ugr.es/ontology/ugr#> ;
owl:sameAs <http://cabas.ugr.es/ontology/ugr#mujeres> ;
owl:inverseOf <http://cabas.ugr.es/ontology/ugr#hombres> ;
ns1:term_status "stable" .
IはSPARQLエンドポイントのVirtuosoに取り付けられた:
私は特定の性別である学生の数を表すプロパティの組を定義しているオントロジー(http://cabas.ugr.es/ontology/ugr)を有しますthis linkで対応することになる
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX ugr: <http://cabas.ugr.es/ontology/ugr#>
SELECT ?X ?titulacion ?rama ?hombres ?mujeres
WHERE {
?X ugr:Titulación ?titulacion .
?X ugr:RamaConocimiento ?rama .
?X ugr:hombres ?hombres .
?X ugr:mujeres ?mujeres
}
()
:)、ここで私は、たとえば次のクエリを入力します。すべてのレコードを返しますが、フィールド「hombres」と「mujeres」は数値の代わりに文字列であるかのように返します。たとえば、FILTER (?hombres > 500)
のようなフィルタを適用することはできません。私が間違っているものは何か考えていますか?ところで
、オントロジーと値を持つリソースは、これらのリンクからアクセスできます:
オントロジー:
- タートルフォーマット:
- RDF/XMLフォーマット:
リソース:
- タートルフォーマット:
- RDF/XMLフォーマット:数字として数字を処置するために
プロパティの範囲を定義するだけでは不十分です。 ':x:hombres" 352 "' - > ':x:hombres" 352 "^^ xsd:nonNegativeInteger' – AKSW