LDPath is a simple path-based query language, similar to XPath or SPARQL Property Paths, that is particularly well-suited for querying and retrieving resources from the Linked Data Cloud by following RDF links between resources and servers.
For example, the following path query would select the names of all friends of the context resource:
foaf:knows / foaf:name :: xsd:string
Read the full language specification for further details. Before dontated to the ASF, LDPath (formally known as RDFPath) was hosted on Google Code.
LDPath library is a collection of generic libraries that are independent of the underlying RDF implementation. Currently, there are backends for sesame, for RDF files, and for Linked Data. You can easily implement your own backends by implementing a straightforward interface (RDFBackend).
LDPath can serve many different purposes. It can e.g. serve as
The LDPath project consists of a collection of modules that can be combined as needed. We have grouped the modules in core modules, backends, and extensions. Modules are available in our Maven repository, see MavenArtifacts.
@@TODO@@: this needs to be updated
The following modules are the core modules of LDPath and are needed in every situation:
We provide a number of backends that are ready-to-use in your own projects. Implementing a backend is usually straightforward and involves mainly impementing the RDFBackend interface. RDFBackend makes use of Java Generics, so you are able to always use the data model of your backend directly. The following backends are provided by the distribution:
Based on LDPath, we have implemented a number of extension modules. Some are part of other projects like the Linked Media Framework or Apache Stanbol. Part of the LDPath project itself are currently the following modules:
Check the LDPath language specification, a more detailed introduction about the language constructs is available on the wiki.