To jest stara wersja strony!
Opis
Realizujący:
Marcin Gadamer marcin.gadamer@gmail.com
Investigate runtime integration aspects, mainly
Prolog+Java integration possibilities
input
Prolog/Java APIs
JSR94
Jess
JenaRules
integration
output
How to integrate Prolog and Java in the best way regarding performance, and coding easiness + examples.
MIW temat
Spotkania
08.03.04
08.04.01
Projekt
Ponieważ Jess można używać jedynie przez 30 dni, wykorzystuję do integracji framework Jena.
Prolog ←przedstawienie wiedzy→ RDF ←przedstawienie wiedzy→ Java
Mały program w Java, który pokazuje relacje pomiędzy tatą (Jan), mamą (Krystyna), córką (Kasia), synem (Jasiu)
Zostały zapisane następujące dane:
corka.addProperty(siostra, syn);
tata.addProperty(ojciec, corka);
tata.addProperty(ojciec, syn);
tata.addProperty(malzonek, mama);
mama.addProperty(malzonek, tata);
Statement statement1 = model.createStatement(syn, dziecko, mama);
Statement statement2 = model.createStatement(syn, dziecko, tata);
Statement statement3 = model.createStatement(corka, dziecko, mama);
Statement statement4 = model.createStatement(corka, dziecko, tata);
W pliku RDF:
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:j.0="http://purl.org/vocab/relacje/" >
<rdf:Description rdf:about="http://Family/KowalskiJan">
<j.0:malzonek rdf:resource="http://Family/KowalskiKrystyna"/>
<j.0:ojciec rdf:resource="http://Family/KowalskiJasiu"/>
<j.0:ojciec rdf:resource="http://Family/KowalskiKasia"/>
</rdf:Description>
<rdf:Description rdf:about="http://Family/KowalskiKrystyna">
<j.0:malzonek rdf:resource="http://Family/KowalskiJan"/>
</rdf:Description>
<rdf:Description rdf:about="http://Family/KowalskiKasia">
<j.0:dziecko rdf:resource="http://Family/KowalskiJan"/>
<j.0:dziecko rdf:resource="http://Family/KowalskiKrystyna"/>
<j.0:siostra rdf:resource="http://Family/KowalskiJasiu"/>
</rdf:Description>
<rdf:Description rdf:about="http://Family/KowalskiJasiu">
<j.0:dziecko rdf:resource="http://Family/KowalskiJan"/>
<j.0:dziecko rdf:resource="http://Family/KowalskiKrystyna"/>
</rdf:Description>
</rdf:RDF>
Przekazany RDF do Javy daje model z zawartością 9 informacji.
Po zadaniu prostych zapytań
syn.listProperties(dziecko);
corka.listProperties(dziecko);
corka.listProperties(siostra);
otrzymałem:
http://Family/KowalskiJasiu jest dzieckiem
http://Family/KowalskiJan
http://Family/KowalskiKrystyna
http://Family/KowalskiKasia jest dzieckiem
http://Family/KowalskiJan
http://Family/KowalskiKrystyna
http://Family/KowalskiKasia ma rodzenstwo
http://Family/KowalskiJasiu
Sprawozdanie
Materiały