swish-0.6.0.1: A semantic web toolkit.

PortabilityOverloadedStrings
Stabilityexperimental
MaintainerDouglas Burke

Swish.RDF.N3Parser

Contents

Description

This Module implements a Notation 3 parser (see [1], [2], [3]), returning a new RDFGraph consisting of triples and namespace information parsed from the supplied N3 input string, or an error indication.

REFERENCES:

1 http://www.w3.org/TeamSubmission/2008/SUBM-n3-20080114/ Notation3 (N3): A readable RDF syntax, W3C Team Submission 14 January 2008

2 http://www.w3.org/DesignIssues/Notation3.html Tim Berners-Lee's design issues series notes and description

3 http://www.w3.org/2000/10/swap/Primer.html Notation 3 Primer by Sean Palmer

NOTES:

UTF-8 handling is not really tested.

No performance testing has been applied.

Not all N3 grammar elements are supported, including:

  • @forSome (we read it in but ignore the arguments)
  • @forAll (this causes a parse error)
  • formulae are lightly tested
  • string support is incomplete (e.g. unrecognized escape characters such as \q are probably handled incorrectly)

Synopsis

Documentation

parseN3Source

Arguments

:: Text

input in N3 format.

-> Maybe QName

optional base URI

-> ParseResult 

Parse a string with an optional base URI.

See also parseN3fromString.

parseN3fromTextSource

Arguments

:: Text

input in N3 format.

-> ParseResult 

Parse a string as N3 (with no real base URI).

See parseN3 if you need to provide a base URI.

parseAnyfromTextSource

Arguments

:: N3Parser a

parser to apply

-> Maybe QName

base URI of the input, or Nothing to use default base value

-> Text

input to be parsed

-> Either String a 

Function to supply initial context and parse supplied term.

Exports for parsers that embed Notation3 in a bigger syntax

type SpecialMap = LookupMap (String, ScopedName)Source

Type for special name lookup table