스마트 폰 데이터로 내 RDF 기반에서 리터럴 장치 이름을 가져 오는 데 어려움을 겪고 있습니다. 예 데이터 :RDF에서 SPARQL의 기준에 따라 문자 그대로 가져 오기
쿼리<rdf:Description rdf:about="https://lukasgorny.pro/devices#GioneeX1">
<feature:device-name>Gionee X1</feature:device-name>
<feature:screen-size>big</feature:screen-size>
<feature:internal-memory-size>small</feature:internal-memory-size>
</rdf:Description>
<rdf:Description rdf:about="https://lukasgorny.pro/devices#SharpAquosS3">
<feature:device-name>Sharp Aquos S3</feature:device-name>
<feature:screen-size>big</feature:screen-size>
<feature:internal-memory-size>big</feature:internal-memory-size>
</rdf:Description>
:
나는 화면 크기가 "큰"내부 메모리 크기는 "작은"입니다 모든 장치 이름을 추출 할PREFIX feature: <https://lukasgorny.pro/devices#>
SELECT ?device WHERE
{
?device feature:device-name ?deviceName .
OPTIONAL { ?x feature:screen-size ?screenSize . }
OPTIONAL { ?y feature:internal-memory-size ?memorySize . }
}
(그가에 매개 변수화되어 내 응용 프로그램,하지만 여기에 예제를 제공). 친절하게도 저를 올바른 방향으로 가르쳐 주시겠습니까? 솔루션을 찾을 수없는 것 같습니다.
의 사용 가능한 복제 (https://stackoverflow.com/questions/2591719/exact-matching -of-strings-in-sparql) –
'OPTIONAL' 조항의 목적은 무엇입니까? 그것들은 외부 트리플 패턴의 변수에 연결되지 않습니다. – AKSW