anchor.diff:    open triple
     open prefixes
   
  -  let fromSubject u g = fromSingle bySubject u g
  -  let fromPredicate u g = fromSingle byPredicate u g
  -  let fromObject u g = fromSingle byObject u g
  -  let fromPredicateObject x y g = fromDouble byPredicateObject x y g
  -  let fromSubjectObject x y g = fromDouble bySubjectObject x y g
  -  let fromSubjectPredicate x y g = fromDouble bySubjectPredicate x y g
  -  let fromType u g = fromObject u g |> List.collect (function | R(S s, _) -> fromSubject s g)
  +  let fromSubject  = fromSingle bySubject
  +  let fromPredicate  = fromSingle byPredicate
  +  let fromObject  = fromSingle byObject
  +  let fromPredicateObject = fromDouble byPredicateObject
  +  let fromSubjectObject  = fromDouble bySubjectObject
  +  let fromSubjectPredicate  = fromDouble bySubjectPredicate
  +  let fromType = fromSingle byType
   
     let asTriples (R(s,px) ) = [
         for (p, o) in px -> (s, p, o)
  
positive.code:     g.GetTriplesWithSubjectObject(uriNode p (Graph g), uriNode o (Graph g))
    let bySubjectPredicate p o (Graph g) =
      g.GetTriplesWithSubjectPredicate(uriNode p (Graph g), uriNode o (Graph g))
    let fromSingle f x g = f x g |> Resource.from
    let fromDouble f x y g = f x y g |> Resource.from
  
  
negative.code: module xsd =
    open VDS.RDF
  
    let string =
      function
      | Node.Literal(Literal.String s) -> s
  