@rdfjs/traverser
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/rdfjs__traverser package

0.1.3 • Public • Published

@rdfjs/traverser

build status

npm version

This package provides a generic traverser for RDF/JS Datasets.

Usage

The main export of the package is the Traverser class. It can be imported like this:

import Traverser from '@rdfjs/traverser'

The package also provides a factory that can be used with @rdfjs/environment:

import Environment from '@rdfjs/environment'
import TraverserFactory from '@rdfjs/traverser/Factory.js'

const env = new Environment([DataFactory, DatasetFactory, TraverserFactory])

Traverser(filter, { backward, factory, forward })

Creates a new Traverser instance. A Traverser contains only the rules for traversing. The dataset and the starting point must be given to the methods.

  • filter: A filter function that returns a truthy value if the Traverser should traverse the given quad.
  • backward: If true, traverse from object to subject. (default: false)
  • factory: A RDF/JS factory that supports RDF/JS Datasets. The function will be called like this: filter({ dataset, level, quad }).
    • dataset: The RDF/JS Dataset that is traversed.
    • level: The number of quads followed until the filter was called.
    • quad: The current quad to process.
  • forward: (default: true)

forEach ({ term, dataset }, callback)

Calls the given callback function for each quad matching the rules of the Traverser, starting from the given term and dataset. The callback function is called like this: callback({ dataset, level, quad }).

  • dataset: The RDF/JS Dataset that is traversed.
  • level: The number of quads followed until the callback was called.
  • quad: The current quad to process.

match ({ term, dataset })

Returns a RDF/JS Dataset that contains all quads matching the rules of the Traverser, starting from the given term and dataset.

reduce ({ term, dataset }, callback, initialValue)

Calls the given callback function for each quad matching the rules of the Traverser, starting from the given term and dataset. The callback function is called like this: callback({ dataset, level, quad }, result).

  • dataset: The RDF/JS Dataset that is traversed.
  • level: The number of quads followed until the callback was called.
  • quad: The current quad to process.
  • result: The return value of the previous call of the callback function. If it's called the first time, the initialValue is used.

Factory

The constructor is called by the @rdfjs/environment. The environment must support the RDF/JS DatasetFactory interface.

traverser(filter, { backward = false, forward = true } = {})

Creates a new Traverser instance and returns it.

For more details, see the Traverser constructor section.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.1.3
    0
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 0.1.3
    0
  • 0.1.2
    11,493
  • 0.1.1
    321
  • 0.1.0
    3,582

Package Sidebar

Install

npm i @rdfjs/traverser

Weekly Downloads

7,407

Version

0.1.3

License

MIT

Unpacked Size

22.1 kB

Total Files

11

Last publish

Collaborators

  • bergos