Versa (query language)

Versa (query language)

Versa is a RDF query language, used to query RDF data. Versa differs from most other RDF query languages, which are typically based on SQL or specialized XML vocabularies. Although the design of Versa was inspired by XPath, its compact, functional syntax also somewhat resembles Lisp. As of 2006, the only Versa implementation is in the Python-language, open-source 4Suite XML framework.

History and status

Versa's origins can be traced to 2000, when professional XML consultancy Fourthought, Inc. began developing RIL, an open, XML-based RDF Inference Language. RIL was implemented briefly in Fourthought's 4Suite Server product, which allowed for persistent storage and querying of an RDF model and associated XML document store.

In October 2001, the query portion of RIL was spun off into a separate project named Versa, with the intent that after Versa stabilized, development would resume in order to establish RIL as a formal language for working Versa query results. RIL development never resumed, however; inference capabilities in 4Suite were easily handled by XSLT extensions and did not require a separate language.

Versa initially had limitations that required the language to be redesigned. The overhaul was performed in late 2001 and early 2002 by software engineers from Sun Microsystems and Fourthought, in order to facilitate internal knowledge management applications at Sun and to drive applications that were in development for Fourthought's other clients. 4Suite's Versa library was used as the reference implementation, and a draft specification was published.

Versa development slowed in 2002, although Sun and Fourthought continued to work together to develop Versa based applications through 2004. In mid-2005, Chimezie Ogbuji and Daniel Krech began planning to fold the capabilities of 4Suite's outdated RDF libraries (4RDF), including Versa support, into RDFLib, which offers complementary features and would allow Versa to be used independently of 4Suite. This coincided with renewed interest in refining the Versa draft specification and publishing a "1.0" version.

As of 2006, the development of Versa is being coordinated primarily by Chimezie and Uche Ogbuji of Fourthought.

yntax examples

Get the URIs of all known resources: all()

Get the URIs of all known instances of type edu:Subject: type(edu:Subject)

Get the rdfs:labels of all edu:Subjects having one or more rdfs:label: type(edu:Subject) - rdfs:label -> *

Get the URIs of all edu:Subjects having a rdfs:label matching "Russian language": type(edu:Subject) |- rdfs:label -> eq("Russian language")

Get the URIs of all "super-edu:Subjects" (transitively) of the edu:Subject identified by "http://en.wikipedia.org/wiki/Russian_language": traverse(@"http://en.wikipedia.org/wiki/Russian_language", @"http://example.com/education#subTopicOf", vtrav:forward, vtrav:transitive)

External links

* [http://uche.ogbuji.net/tech/rdf/versa/ Versa home page]
* [http://www-128.ibm.com/developerworks/xml/library/x-think10/ IBM developerWorks: Thinking XML: Basic XML and RDF techniques for knowledge management, Part 6]
* [http://www.xml.com/lpt/a/2005/07/20/versa.html XML.com: Versa: Path-Based RDF Query Language]
* irc://irc.freenode.net/versa ; there exists a Versa "IRC bot" [http://copia.ogbuji.net/blog/2005-07-18/Emeka] , useful for learning, experimentation, and debugging
* [http://rdfstore.sourceforge.net/2002/06/24/rdf-query/ RDF query use cases, including query language samples]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • RDF query language — A RDF query language is a computer language able to retrieve and manipulate data stored in Resource Description Framework format.SPARQL is emerging as the de facto RDF query language, and is a W3C Recommendation [ [http://www.w3.org/TR/rdf sparql …   Wikipedia

  • Versa — may refer to: * Versa (query language), an RDF query language * The Maruti Versa a multi purpose vehicle (MPV) made by Maruti Udyog Limited and sold in India * The Nissan Versa, the North American market name of the Nissan Tiida automobile *… …   Wikipedia

  • Versa — Эта статья о языке запросов. Возможно, вы искали автомобиль Nissan Versa Versa язык запросов к данным в Resource Description Framework. Это компактный функциональный язык программирования, синтаксис которого напоминает Lisp, когда альтернативные… …   Википедия

  • C Sharp (programming language) — The correct title of this article is C# (programming language). The substitution or omission of the # sign is because of technical restrictions. C# Paradigm(s) multi paradigm: structured, imperative …   Wikipedia

  • Classification of the Japanese language — The immediate classification of the Japanese language is clear: it is a Japonic language, along with the Ryukyuan languages. Traditionally, these are considered dialects of a single language isolate. However, more distant connections remain… …   Wikipedia

  • Database — A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality (for example, the availability of rooms in hotels), in a way that supports… …   Wikipedia

  • XQuery — is a query language (with some programming language features) that is designed to query collections of XML data. It is semantically similar to SQL.XQuery 1.0 was developed by the XML Query working group of the W3C. The work was closely… …   Wikipedia

  • SPARQL — (рекурсивный акроним от англ. SPARQL Protocol and RDF Query Language)  язык запросов к данным, представленным по модели RDF, а также протокол для передачи этих запросов и ответов на них. SPARQL является рекомендацией консорциума W3C[1]… …   Википедия

  • Resource Description Framework — Infobox file format name = Resource Description Framework icon = logo = extension = .rdf mime = application/rdf+xml type code = uniform type = magic = owner = [http://www.w3.org/ World Wide Web Consortium] genre = semantic web container for =… …   Wikipedia

  • XML database — An XML database is a data persistence software system that allows data to be stored in XML format. This data can then be queried, exported and serialized into the desired format. Two major classes of XML database exist: XML enabled: these map all …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”