[РЕДАКТИРОВАТЬ]
У меня есть этот RDF:
@prefix : <http://www.x.com/ontology#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix ontology: <http://www.x.com/ontology/> .
<http://www.x.com/ontology>
a owl:Ontology .
ontology:melalui_jalur
a owl:ObjectProperty .
ontology:memiliki_peminat
a owl:ObjectProperty .
ontology:alias a owl:DatatypeProperty .
ontology:jumlah a owl:DatatypeProperty .
ontology:nama a owl:DatatypeProperty .
ontology:tahun a owl:DatatypeProperty .
ontology:Jalur_Terima
a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:alias
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:nama
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:alias
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:nama
] .
ontology:Peminat a owl:Class ;
rdfs:subClassOf ontology:Penerimaan ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:int ;
owl:onProperty ontology:jumlah
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:int ;
owl:onProperty ontology:tahun
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:int ;
owl:onProperty ontology:jumlah
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:int ;
owl:onProperty ontology:tahun
] .
ontology:Penerimaan a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty ontology:melalui_jalur ;
owl:someValuesFrom ontology:Jalur_Terima
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty ontology:melalui_jalur ;
owl:someValuesFrom ontology:Jalur_Terima
] .
ontology:Prodi a owl:Class ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty ontology:memiliki_peminat ;
owl:someValuesFrom ontology:Peminat
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:alias
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:nama
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:onProperty ontology:memiliki_peminat ;
owl:someValuesFrom ontology:Peminat
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:alias
] ;
rdfs:subClassOf [ a owl:Restriction ;
owl:allValuesFrom xsd:string ;
owl:onProperty ontology:nama
] .
ontology:Non_Reguler a ontology:Jalur_Terima , owl:NamedIndividual .
ontology:Pem_Non_2017
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 0 ;
ontology:melalui_jalur ontology:Non_Reguler ;
ontology:tahun 2017 .
ontology:Pem_Non_2018
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 0 ;
ontology:melalui_jalur ontology:Non_Reguler ;
ontology:tahun 2018 .
ontology:Pem_SAP_2017
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 8 ;
ontology:melalui_jalur ontology:SAP ;
ontology:tahun 2017 .
ontology:SAP a ontology:Jalur_Terima , owl:NamedIndividual .
ontology:Pem_SAP_2018
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 7 ;
ontology:melalui_jalur ontology:SAP ;
ontology:tahun 2018 .
ontology:Pem_SBM_2017
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 6 ;
ontology:melalui_jalur ontology:SBMPTN ;
ontology:tahun 2017 .
ontology:SBMPTN a ontology:Jalur_Terima , owl:NamedIndividual .
ontology:Pem_SBM_2018
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 5 ;
ontology:melalui_jalur ontology:SBMPTN ;
ontology:tahun 2018 .
ontology:Pem_SNM_2017
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 4 ;
ontology:melalui_jalur ontology:SNMPTN ;
ontology:tahun 2017 .
ontology:SNMPTN a ontology:Jalur_Terima , owl:NamedIndividual .
ontology:Pem_SNM_2018
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 3 ;
ontology:melalui_jalur ontology:SNMPTN ;
ontology:tahun 2018 .
ontology:Pem_SPMK_2017
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 2 ;
ontology:melalui_jalur ontology:SPMK ;
ontology:tahun 2017 .
ontology:SPMK a ontology:Jalur_Terima , owl:NamedIndividual .
ontology:Pem_SPMK_2018
a ontology:Peminat , owl:NamedIndividual ;
ontology:jumlah 1 ;
ontology:melalui_jalur ontology:SPMK ;
ontology:tahun 2018 .
ontology:TIF a ontology:Prodi , owl:NamedIndividual ;
ontology:memiliki_peminat ontology:Pem_Non_2017 , ontology:Pem_Non_2018 , ontology:Pem_SAP_2017 , ontology:Pem_SAP_2018 , ontology:Pem_SBM_2017 , ontology:Pem_SBM_2018 , ontology:Pem_SNM_2017 , ontology:Pem_SNM_2018 , ontology:Pem_SPMK_2017 , ontology:Pem_SPMK_2018 .
Ожидаемый результат: я хочу получить доступ к свойству (tahun и jumlah) -данных в Peminat на основе Jalur_Terima, чтобы данные моглипоказанный в этой таблице
сейчас я могу получить доступ к своей таблице, используя этот запрос
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX x: <http://www.x.com/ontology/>
SELECT ?tahun ?snm_pem ?sbm_pem ?spmk_pem ?sap_pem ?non_pem
WHERE {
Bind(x:TIF as ?tif)
?tif x:memiliki_peminat ?pem1.
?pem1 x:tahun ?tahun;
x:melalui_jalur x:SNMPTN;
x:jumlah ?snm_pem.
x:TIF x:memiliki_peminat ?pem2.
?pem2 x:tahun ?tahun;
x:melalui_jalur x:SBMPTN;
x:jumlah ?sbm_pem.
x:TIF x:memiliki_peminat ?pem3.
?pem3 x:tahun ?tahun;
x:melalui_jalur x:SPMK;
x:jumlah ?spmk_pem.
x:TIF x:memiliki_peminat ?pem4.
?pem4 x:tahun ?tahun;
x:melalui_jalur x:SAP;
x:jumlah ?sap_pem.
x:TIF x:memiliki_peminat ?pem5.
?pem5 x:tahun ?tahun;
x:melalui_jalur x:Non_Reguler;
x:jumlah ?non_pem.
}
ORDER BY DESC(?tahun)
Я хотел бы спросить, как упростить этот запрос? или есть другой способ получить к нему доступ? спасибо