This project is used for hands-on sessions, guided by someone who is familiar with the MarkLogic REST API. The goal is that, after going through the exercises, a developer will be comfortable using the API to interact with MarkLogic.
Knowledge of JavaScript is assumed.
MarkLogic is a document- and triple-store database. One of the features in MarkLogic 8 is a REST API. The exercises presented here will give you a taste of how the REST API works. Note that it is intended to get you started and show the power of the API, but it is not a full replacement for MarkLogic University's class on the subject.
-
Clone the Geophoto repository.
-
cd to a directory where you want to project to be
-
git clone https://github.com/marklogic/Geophoto
-
Follow Geophoto's setup instructions, including data import.
-
In the hands-on-node directory, run
npm install
.
This session is based on the Geophoto application. Once you've cloned and set up the application and imported the data, start the application (see Geophoto's README for instructions).
See MarkLogic University's Using Node.js: The Geophoto App On Demand video for an overview of the Geophoto application.
Things to note in the Geophoto application:
- map view
- click a marker
- edit the image metadata
- see the semantic info
- geo search
- circle search
- MarkLogic also supports arbitrary polygons
The database holds three types of data: binary images, metadata to describe them, and triples to provide context.
Trace the steps of editing the title of an image.
- views/partials/edit.jade
- public/js/editor/photoeditor.controller.js (updateTitle)
- public/js/data/photofactory.js (update)
- POST /api/image/update/:id/:update
- routes.js: update -> apiupdate -> updateDocument (read, edit, write)
- MarkLogic University has an instructor-led course on using MarkLogic with the Node.js Client API
- A version of the Hands-on REST slide deck is available