Developing a Semantic Web Application

回眸只為那壹抹淺笑 提交于 2019-12-13 11:18:27

问题


Although i have a little bit of experience in developing dynamic websites using ASP technologies, but I am new to semantic web programming, and i intend to implement a website based on semantic web technology.I would like to develop a search engine, where a web user can query for keywords from the backend RDF triple store.I want to implement the website using Java and JSP.I have following questions:

  1. I am currently studying Jena framework and SPARQL to start with,but i am not sure what other technologies i need to study in order to implement the website.
  2. What is the difference between RDF and OWL, I have gone through a lot of web resources but i am still confused.As per my understanding RDF and OWL both define relationship between concepts but OWL is more rich in terms of defining relations.
  3. What is meant by different OWL Vocabularies like FOAF, SIOC etc.Why do we need these vocabularies?
  4. What exactly is the purpose of Virtuso Open Link Software(http://ods.openlinksw.com/dataspace/dav/wiki/Main/VirtJenaProvider)

Any help would be highly appreciated.

Thanks!


回答1:


I would definitely like to be kept up to date of your progress. I'm not experienced with java or jsp. I wonder if this could be done in php? I know that some work has been done in python on this kind of thing. There are some extensions to drupal that work with these semantic web technologies and Semantic Media Wiki is good too.
Check out this and the related links at the bottom. The difference between microformats and vocabularies can be difficult to understand but I think there is a difference, say between a vocabulary like FOAF and a microformat like hCard, hCalendar or hResume. Oh, the link: http://en.wikipedia.org/wiki/FOAF_(software) Anyway these related terms are included.

Thanks, Bruce http://futurewavedesigns.com




回答2:


Re: your first question - why do you want to use RDF to implement a keyword search? Keyword search isn't semantic, and there are many established frameworks and APIs for keyword search, such as Lucene.

Re: your second question, comparing RDF and OWL is comparing apples and oranges. RDF is basically for declaring data, but OWL is a layer on top of RDF that is for declaring ontologies (schemas). A more meaningful comparison would be between RDFS (RDF Schema) and OWL, which both address the ontology layer.

Example:

In RDF you might state that John Smith is a Person who hasAge "42" and is marriedTo Jill Smith.

In RDFS or OWL you would declare that Person is a class, hasAge is a property (with domain of Person and range of xsd:integer) and marriedTo is a property (with domain and range of Person).

In OWL you can also declare that marriedTo is a symmetric property (if A is marriedTo B, then B must be marriedTo A). RDF isn't this powerful, so you can't make this particular statement, so can't make inferences about symmetric properties etc.



来源:https://stackoverflow.com/questions/5254678/developing-a-semantic-web-application

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!