Source code for a grant funded project to connect scholars to artists' book through the use of linked open data (LOD).
The data visualization tool uses metadata in an RDF/XML format from the special collections of the library at the University of California, Irvine. The PLODAB tool is built using D3.js, AngularJS, and rdflib.js.
Rdflib parses the RDF/XML data using an angular service, and returns it to three interactive charts, encapsulated into custom directives. These three charts work together to give a hierarchically described tool for exploration of the subjects, materials, techniques, and places of publication within the metadata.
Base RDF/XML linked data file is available here: 2016.04.05_RDF_COMPLETE.xml , and an example of the code in action is available at http://special.lib.uci.edu/artists-books-discovery-tool.
node.js - Linux/Mac OS X/Windows
- Install via package manager (apt-get, yum, Homebrew) (recommended)
- Build from source
- Install via Binary or Installer package
For Mac OS X: node.js requires Xcode
For Windows: if building from source, you may need to specify which version of Microsoft Visual Studio you have installed to get native dependencies to build correctly
- Install node.js (above)
- Clone or download/unzip codebase
- In terminal, navigate to root directory of codebase and use command
http-server
to serve files - Port defaults to 8080. To change, run
http-server -p XXXX
whereXXXX
is the port # you wish to use
- /lib/data -- put RDF/XML data file(s) here
- Update name/path of RDF/XML data file in /lib/javascripts/angular/services/data_services.js
- /lib/javascripts/angular/directives/ -- files governing UI of chart components
- /lib/javascripts/angular/services/ -- files governing data parsing for bubbles, tree diagram, timeline & artifact
- /lib/javascripts/charts -- files governing look & functionality of bubbles, tree diagram, timeline & artifact
UCI Libraries' Digital Scholarship Services
Claire Woods: Code & Design
The MIT License (MIT)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- This project utilizes libraries which may or may not have additional individual licenses