private Node WrapNode(VDS.RDF.INode node) { var literal = node as ILiteralNode; if (literal != null) { if (literal.DataType != null) { return(Node.ForLiteral(literal.Value, literal.DataType)); } if (literal.Language != null) { return(Node.ForLiteral(literal.Value, literal.Language)); } return(Node.ForLiteral(literal.Value)); } var uriNode = node as IUriNode; if (uriNode != null) { return(Node.ForUri(uriNode.Uri)); } var blankNode = node as IBlankNode; if (blankNode != null) { return(Node.ForBlank(blankNode.InternalID, null, null)); } throw new ArgumentException("The node was neither URI, literal nor blank", "node"); }
private static Node ToNode(this VDS.RDF.INode node, EntityId id) { if (node is IUriNode) { return(Node.ForUri(((IUriNode)node).Uri)); } if (node is IBlankNode) { return(Node.ForBlank(((IBlankNode)node).InternalID, id, node.GraphUri)); } var literal = (ILiteralNode)node; if (literal.DataType != null) { return(Node.ForLiteral(literal.Value, literal.DataType)); } if (literal.Language != null) { return(Node.ForLiteral(literal.Value, literal.Language)); } return(Node.ForLiteral(literal.Value)); }
/// <summary>Converts a dotNetRDF's <see cref="VDS.RDF.INode"/> into RomanticWeb's <see cref="Node"/>.</summary> public static Node WrapNode(this VDS.RDF.INode node, EntityId entityId) { var literal = node as ILiteralNode; if (literal != null) { if (literal.DataType != null) { return(Node.ForLiteral(literal.Value, literal.DataType)); } if (literal.Language != null) { return(Node.ForLiteral(literal.Value, literal.Language)); } return(Node.ForLiteral(literal.Value)); } var uriNode = node as IUriNode; if (uriNode != null) { return(Node.ForUri(uriNode.Uri)); } var blankNode = node as IBlankNode; if (blankNode != null) { return(Node.ForBlank(blankNode.InternalID, entityId, blankNode.GraphUri)); } throw new ArgumentException("The node was neither URI, literal nor blank", "node"); }