문자 정보 기반 API를 사용하여 JIS 수준 n
15761 단어 SPARQL
1. API
텍스트 정보를 기반으로 SPARQL Endpoint를 제공하며, 다음 웹 형식에서 SPARQL을 입력하여 정보를 얻을 수 있습니다.
SPARQL Endpoint는 다음 자바스크립트 코드를 사용하여 웹 브라우저에서 사용할 수 있는 CORS를 지원합니다.query 섹션을 적절한 SPARQL 질의로 바꿉니다.
query.js
$(function() {
var query = "select * where {?s ?p ?o.} limit 10";
$.getJSON("https://mojikiban.ipa.go.jp/1bf7a30fda/sparql", {
format: "application/sparql-results+json",
m: "sparql",
query: query
}).then(function(json) {
console.log(json);
}).catch(function() {
console.log(arguments);
});
});
2. JIS의 레벨별 수록수
이런 검색
count.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
select ?o (count(?s) as ?count) where {
?s mjp:JIS水準 ?o .
} group by ?o
이런 결과를 되돌려주다
result.json{
"head": {
"vars": [
"o",
"count"
]
},
"results": {
"bindings": [
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/4"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "2436"
}
},
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/1"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "2969"
}
},
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/2"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "3390"
}
},
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/3"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "1259"
}
}
]
}
}
표로 바뀌면 이런 결과야.
o
count
http://mojikiban.ipa.go.jp/data/JIS수평
2,969
http://mojikiban.ipa.go.jp/data/JIS수평/2
3,390
http://mojikiban.ipa.go.jp/data/JIS수평/3
1,259
http://mojikiban.ipa.go.jp/data/JIS수평
2,436
문자 정보 기반 SPARQL Endpoint는 기본적으로 2000개, 최대 5000개의 쿼리를 지원합니다.수치를 수준별로 취득했다면 LIMIT5000을 부여하면 한 번에 취득할 수 있다.
위키백과 일본판: JIS 한자 인코딩의 계수와 비교하면 첫 번째 수준의 문자 수는 일치하지 않지만 뒤에 설명할 것이다.
3. JIS의 수준별 소속 문자에 맞는 UCS
JIS 최고 수준
1.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/1> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
JIS 제 2 수준
2.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/2> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
JIS 제3수준
3.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/3> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
JIS 네 번째 수준
4.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/4> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
상용 한자
j.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label {
?s mjp:常用漢字であるか "yes" ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
샘플 내보내기 및 활용
질의를 실제로 실행하면 다음 JSON이 출력됩니다."value": "3A02"
처럼 16진수 UCS를 가져옵니다.
2.json{
"head": {
"vars": [
"label"
]
},
"results": {
"bindings": [
{
"label": {
"type": "literal",
"value": "3A02"
}
},
{
"label": {
"type": "literal",
"value": "63C0"
}
},
...
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
select ?o (count(?s) as ?count) where {
?s mjp:JIS水準 ?o .
} group by ?o
{
"head": {
"vars": [
"o",
"count"
]
},
"results": {
"bindings": [
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/4"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "2436"
}
},
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/1"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "2969"
}
},
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/2"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "3390"
}
},
{
"o": {
"type": "uri",
"value": "http://mojikiban.ipa.go.jp/data/JIS水準/3"
},
"count": {
"datatype": "http://www.w3.org/2001/XMLSchema#integer",
"type": "typed-literal",
"value": "1259"
}
}
]
}
}
JIS 최고 수준
1.rq
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/1> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
JIS 제 2 수준
2.rq
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/2> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
JIS 제3수준
3.rq
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/3> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
JIS 네 번째 수준
4.rq
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label where {
?s mjp:JISX0213/mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/4> ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
상용 한자
j.rq
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select ?label {
?s mjp:常用漢字であるか "yes" ;
mjp:実装UCS/rdfs:label ?label .
} limit 5000
샘플 내보내기 및 활용
질의를 실제로 실행하면 다음 JSON이 출력됩니다.
"value": "3A02"
처럼 16진수 UCS를 가져옵니다.2.json
{
"head": {
"vars": [
"label"
]
},
"results": {
"bindings": [
{
"label": {
"type": "literal",
"value": "3A02"
}
},
{
"label": {
"type": "literal",
"value": "63C0"
}
},
...
㨂
처럼 각value의 앞뒤를 보충하여 수치 문자 참조로 문자를 지정할 수 있다.4.예외
JIS의 첫 번째 수준은 위에서 말한 바와 같이 일반적으로 말하는 문자 수와 문자 정보에 기초한 문자 수가 일치하지 않는다.
다음 쿼리는 DB 내 JIS 1위를 기록한 데이터 중 1-0으로 시작된 지역점 번호로 총 4개의 쿼리가 성공했다.
inspect.rqPREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select * where {
?a mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/1> ;
rdfs:label ?jis .
FILTER REGEX(?jis, "^1-0.*$")
} limit 5000
PREFIX mjp: <http://mojikiban.ipa.go.jp/terms/prop/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
select * where {
?a mjp:JIS水準 <http://mojikiban.ipa.go.jp/data/JIS水準/1> ;
rdfs:label ?jis .
FILTER REGEX(?jis, "^1-0.*$")
} limit 5000
5. 요약
문자 정보 기반 SPARQL Endpoint를 사용하여 JIS 수준 문자 세트를 검색하는 방법에 대해 설명합니다.공용으로 API를 제공하기 때문에 프로그래머로서 안심하고 사용할 수 있지 않습니까?문자 정보에 더해 JIS 수준은 물론 문자와 관련한 다양한 정보들이 보존돼 있어 관심 있는 사람이 더 깊이 파고들면 흥미로울 수 있다.
Reference
이 문제에 관하여(문자 정보 기반 API를 사용하여 JIS 수준 n), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/frogcat/items/6b0f3aece151e8e9eec6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(문자 정보 기반 API를 사용하여 JIS 수준 n), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/frogcat/items/6b0f3aece151e8e9eec6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)