rdf4h-1.2.3: A library for RDF processing in Haskell

Safe HaskellNone

Data.RDF.Query

Contents

Synopsis

Query functions

sortTriples :: Triples -> TriplesSource

Answer the given list of triples in sorted order.

equalSubjects :: Triple -> Triple -> BoolSource

Determine whether two triples have equal subjects.

equalPredicates :: Triple -> Triple -> BoolSource

Determine whether two triples have equal predicates.

equalObjects :: Triple -> Triple -> BoolSource

Determine whether two triples have equal objects.

subjectOf :: Triple -> NodeSource

Answer the subject node of the triple.

predicateOf :: Triple -> NodeSource

Answer the predicate node of the triple.

objectOf :: Triple -> NodeSource

Answer the object node of the triple.

isEmpty :: RDF rdf => rdf -> BoolSource

Determines whether the RDF contains zero triples.

rdfContainsNode :: forall rdf. RDF rdf => rdf -> Node -> BoolSource

Answer if rdf contains node.

tripleContainsNode :: Node -> Triple -> BoolSource

Answer if triple contains node.

removeDupes :: Triples -> TriplesSource

Remove duplicate triples, returning unique triples. This function may return the triples in a different order than given.

listSubjectsWithPredicate :: RDF rdf => rdf -> Predicate -> [Subject]Source

Lists of all subjects of triples with the given predicate.

listObjectsOfPredicate :: RDF rdf => rdf -> Predicate -> [Object]Source

Lists of all objects of triples with the given predicate.

RDF graph functions

isIsomorphic :: forall rdf1 rdf2. (RDF rdf1, RDF rdf2) => rdf1 -> rdf2 -> BoolSource

This determines if two RDF representations are equal regardless of blank node names, triple order and prefixes. In math terms, this is the simeq latex operator, or ~=

expandTriples :: RDF rdf => rdf -> TriplesSource

Expand the triples in a graph with the prefix map and base URL for that graph.

fromEither :: RDF rdf => Either ParseFailure rdf -> rdfSource

Convert a parse result into an RDF if it was successful and error and terminate if not.