JSON은 SPARQL 끝점 인터페이스에서 결과 옵션으로 사용할 수 있지만 다시 쓰기 규칙을 구성 할 때 누락되었습니다. Virtuoso 07.20.3217의 현재 SPARQL 결과 옵션은 "Automatic", "RDF/XML"및 "Turtle"입니다. JSON에서 SPARQL 결과를 제공하기 위해 Virtuoso URL 다시 쓰기 규칙을 구성하는 방법은 무엇입니까?
어떻게 JSON의 결과를 제공 할 수있는 규칙을 구성하는? 오픈 링크 지원으로 귀하의 이메일에 답장 대답으로
0
A
답변
1
-
SPARQL 쿼리 결과가 /sparql
쿼리 양식 페이지에서 사용할 수있는 직렬화 형식의 반환 될 수 이것은 지휘자 인터페이스의 감독이었다 JSON이 포함되어 있습니다. Google에서는 이러한 추가 형식을 지휘자 URL 다시 쓰기 규칙 UI에 추가하도록 내부 개선 요청을 기록했습니다.
그 동안 지휘자 UI의 링크를 통해 기존 규칙을 내 보내어 선택한 규칙을 만드는 데 사용 된 SQL을 볼 수 있습니다. 기본 RDF/XML 출력 형식의 경우 format=application%2Frdf%2Bxml
으로 표시됩니다.
the list of supported output formats에서 작업하면 내 보낸 규칙의 format=application%2Frdf%2Bxml
을 format=application%2Frdf%2Bjson
과 같은 것으로 변경하여 원하는 JSON 출력을 얻을 수 있어야합니다. 이 문제는 거기에 고정 될 때까지로, 당신이 도체에서이 재 작성 규칙을 편집 할 수 없습니다 :
DB.DBA.VHOST_REMOVE (
lhost=>'*ini*',
vhost=>'*ini*',
lpath=>'/rewrite-json'
);
DB.DBA.VHOST_DEFINE (
lhost=>'*ini*',
vhost=>'*ini*',
lpath=>'/rewrite-json',
ppath=>'/',
is_dav=>0,
is_brws=>0,
def_page=>'',
vsp_user=>'dba',
ses_vars=>0,
opts=>vector ('browse_sheet', '', 'url_rewrite', 'http_rule_list_1'),
is_default_host=>0
);
DB.DBA.URLREWRITE_CREATE_RULELIST (
'http_rule_list_1', 1,
vector ('http_rule_1')
);
DB.DBA.URLREWRITE_CREATE_REGEX_RULE (
'http_rule_1', 1,
'/rewrite-json',
vector(),
0,
'/sparql?query=select%%20%%2A%%20where%%20%%7B%%3Fs%%20%%3Fp%%20%%3Fo%%7D%%20limit%%205&format=application%2Frdf%2Bjson',
vector(),
NULL,
NULL,
2,
301,
''
);
참고 : 당신은 수동과 같이 보일 것이다, isql
를 통해 편집 된 규칙을로드 할 수 있습니다 JSON 출력 형식은 현재 목록에있는 형식 중 하나를 사용하여 덮어 쓰게됩니다.
또한 working with Virtuoso URL Rewrite Rules에 관한이 기사를 참조하십시오.
감사합니다. 나는 이것을 가지고 있지만 "성명서 실행 결과 집합을 반환하지 않았습니다." 여전히 XML로 결과를 얻는다. –
그럼'format = application %% 2Fsparql-results %% 2Bjson & CXML_redir_for_subjs = 121 & CXML_redir_for_hrefs = & timeout = 30000000'으로 시도해 보았습니다. –
요청의 형식 부분을 선택할 수있는 방법이 있습니까? JSON 및 다른 CSV를 원한다면 하나의 앱을 보유하고 있으며, 동일한 쿼리를 실행하는 것을 선호합니다. –