logo
Разработка Web-сервиса "Выбор музыкального инструмента"

ВЫВОДЫ

В бакалаврской работе была рассмотрена проблема выбора товара, а конкретнее выбора товара в Интернете. Приобретения товара через Интернет-магазины дает многие преимущества, такие как: облегчает выбор товара, предоставляет более конкретную информацию о продаваемых товарах, упрощает покупку товара.

Онтология, применяемая в бакалаврской работе - это попытка формализации данной области знаний. Она состоит из иерархии классов музыкального инструмента "Гитара", класс "гитара" имеет свойства: цвет, материал, цена, тип гитары, производитель гитары, а также их связей и правил, для того, чтобы по этим свойствам можно подобрать нужную гитару.

В результате выполнения работы был создан web-сервис выбора музыкального инструмента "Гитара", реализованный с помощью применения технологий Semantic Web. Функционирование web-сервиса основано на использовании онтологии, содержащей иерархию и характеристики инструментов, а также их свойства и типы. Технология "связывания" онтологии и web-сервиса реализована с помощью SPARQL-запросов. SPARQL-запросы - это запросы к данным, представленным по модели RDF, а также протокол для передачи этих запросов и ответов на них. Под RDF мы понимаем формат данных (в виде ориентированного маркированного графа) для представления информации в всемирной паутине.

ПЕРЕЧЕНЬ ССЫЛОК

Бернерс-Ли, Т. Семантическая Сеть [Текст] / Т. Бернерс-Ли, О. Лассила, Дж. Хендлер // Scientific American. - May 17, 2001, http://ezolin.pisem.net/logic/semantic_web_win.html

W3C Semantic Web FAQ [Электронный ресурс] / W3C. - Режим доступа : www/ URL: http://www.w3.org/2001/sw/SW-FAQ - Загл. с экрана.

Easy RDF and SPARQL for LAMP systems [Электронный ресурс] / Benjamin Nowack, semsol, Germany. - Режим доступа : www/ URL: http://arc.semsol.org/home - Загл. с экрана.

OWL Web Ontology Language Guide [Электронный ресурс] / W3C. - Режим доступа : www/ URL: http://www.w3.org/TR/2004/REC-owl-guide-20040210/ - Загл. с экрана.

Абрамов, А.В. Онтология как метод описания предметных областей. [Текст] / А.В. Абрамов //. Открытые системы - 2005, http://masters.donntu.edu.ua/2010/fknt/bolotova/library/tez6.htm

SPARQL Query Language for RDF [Электронный ресурс] / W3C. - Режим доступа : www/ URL: http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115/ - Загл. с экрана.

Анатолий Гладун, Веб-сервисы как основа деловых отношений // Телеком. Коммуникации и сети. - 2008. - №3. - с. 56.

8.Технология создания web-проекта [Электронный ресурс]. - Режим доступа: www/ URL: http://info-pages.com.ua/e/43 - 20.03.2008 г. - Загл. с экрана.

9.Web-сервисы для новичков [Электронный ресурс]. - Режим доступа: www/URL:http://www.ibm.com/developerworks/ru/webservices/newto/websvc.html - 11.06.2008 г. - Загл. с экрана.

10.Павел Гусак. XML Web Services сервисы [Электронный ресурс]. - Режим доступа: www/URL: http://www.itc.ua/node/9484 - 03.04.2002 г. - Загл. с экрана.

11.Андрей Колесов. Web-сервисы спасут компьютерный мир? [Электронный ресурс]. - Режим доступа: www/URL: http://www.visual.2000.ru/kolesov/byte/2001/10816web.htm - 06.12.2001 г. - Загл. с экрана.

12.Веб 2.0 [Электронный ресурс] // Материал из Википедии -- свободной энциклопедии. - Режим доступа: www/URL: http://ru.wikipedia.org/wiki/Веб_2.0 - Загл. с экрана

13.Антон Орлов. PHP: авторизация доступа [Электронный ресурс]. - Режим доступа: www/URL: http://www.getinfo.ru/article393.html - Загл. с экрана.

14.Hendler, J. Current Status and Future Promise of the Semantic Web [Электронный ресурс] / O. Lassila, J. Hendler. - Режим доступа : www/ URL: http://www.cs.rpi.edu/academics/courses/fall07/semantic/Semantics2006-keynote.ppt

15.Левшин, Д. Web, часть третья [Текст] / Д. Левшин // Открытые системы. 2009. №3.

16.Berners-Lee, T. Isnt it semantic? (Interview with BCS managing editor Brian Runciman) [Электронный ресурс] / BCS . - Режим доступа : www/ URL: http://www.bcs.org/index.php?show=ConWebDoc.3337 - March 2006.- Загл. с экрана.

ПРИЛОЖЕНИЕ А.

ИСХОДНЫЙ КОД ПРИЛОЖЕНИЯ

<?php

include_once("arc/ARC2.php");

$parser = ARC2::getRDFParser();

$parser->parse(http://ninch.net/ontoFull.rdf);

$triples = $parser->getTriples();

$index = $parser->getSimpleIndex();

$config = array(

/* db */

db_host => 127.0.0.1,

db_name => my_db1,

db_user => root1,

store_name => my_store,

//db_pwd => 123,

);

$store = ARC2::getStore($config);

if (!$store->isSetUp()) {

$store->setUp();

}

$store->query(LOAD <http://ninch.net/ontoFull.rdf>);

$value=null;

$value1=null;

$value2=null;

$value3=null;

$value4=null;

while(list($key,$val) = each($rdi))

{

if($val!=null)

$value=$val;

}

//echo $value;

while(list($key,$val) = each($rdi_1))

{

if($val!=null)

$value1=$val;

}

//echo $value1;

while(list($key,$val) = each($rdi_2))

{

if($val!=null)

$value2=$val;

}

while(list($key,$val) = each($rdi_3))

{

if($val!=null)

$value3=$val;

}

$q =

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

PREFIX my: <http://www.owl-ontologies.com/unnamed.owl#> .

SELECT ?obj

WHERE {

?obj rdf:type my:.$value. .

?obj my:color .$value1. .

?obj my:price ?price .

FILTER (?price <.$value2.) .

?obj my:proguser_of_the_guitar ?producer .

?producer rdf:type my:.$value3. .;

if($rdi_4){

while(list($key,$val) = each($rdi_4))

{

if($val!=null)

$value4=$val;

}

//echo $value4;

$q=$q.?obj my:material .$value4. .

}

;

}

else

$q=$q.};

echo"<br/>";

//$rows = $store->query($q, rows);

//foreach ($rows as $r)

//print_r($r);

$r = ;

if ($rows = $store->query($q, rows)) {

foreach ($rows as $row) {

$myObj = explode("#", $row[obj]);

$r .= <li> . $myObj[1] . </li>;

}

}

echo <p>Вам подходит гитара:</p>;

echo $r ? <ul> . $r . </ul> : Извините, подходящей гитары нет;

$store->reset();

?>

ПРИЛОЖЕНИЕ Б

ОНТОЛОГИЯ "ГИТАРА"

<?xml version="1.0"?>

<rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:xsd="http://www.w3.org/2001/XMLSchema#"

xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"

xmlns:owl="http://www.w3.org/2002/07/owl#"

xmlns="http://www.owl-ontologies.com/unnamed.owl#"

xml:base="http://www.owl-ontologies.com/unnamed.owl">

<owl:Ontology rdf:about=""/>

<owl:Class rdf:ID="Strings">

<rdfs:subClassOf>

<owl:Class rdf:ID="Construction_of_the_guitar"/>

</rdfs:subClassOf>

</owl:Class>

<owl:Class rdf:ID="Guitar"/>

<owl:Class rdf:ID="Gibson">

<rdfs:subClassOf>

<owl:Class rdf:ID="Producer"/>

</rdfs:subClassOf>

</owl:Class>

<owl:Class rdf:ID="Body">

<rdfs:subClassOf rdf:resource="#Construction_of_the_guitar"/>

</owl:Class>

<owl:Class rdf:ID="Metal">

<rdfs:subClassOf rdf:resource="#Strings"/>

</owl:Class>

<owl:Class rdf:ID="Electro_classic_guitar">

<rdfs:subClassOf>

<owl:Class rdf:ID="Electro"/>

</rdfs:subClassOf>

</owl:Class>

<owl:Class rdf:ID="Nylon">

<rdfs:subClassOf rdf:resource="#Strings"/>

</owl:Class>

<owl:Class rdf:ID="Hollow_body">