Class NodeFactory
A default implementation of a Node Factory which generates Nodes unrelated to Graphs (wherever possible we suggest using a Graph based implementation instead).
Implements
Inherited Members
Namespace: VDS.RDF
Assembly: dotNetRdf.dll
Syntax
public class NodeFactory : INodeFactory
Constructors
| Edit this page View SourceNodeFactory()
Creates a new Node Factory with default settings.
Declaration
public NodeFactory()
NodeFactory(Uri, INamespaceMapper, bool, IUriFactory)
Creates a new Node Factory.
Declaration
[Obsolete("Replaced by NodeFactory(NodeFactoryOptions, INamespaceMapper, IUriFactory)")]
public NodeFactory(Uri baseUri = null, INamespaceMapper namespaceMap = null, bool normalizeLiteralValues = false, IUriFactory uriFactory = null)
Parameters
Type | Name | Description |
---|---|---|
Uri | baseUri | The initial base URI to use for the resolution of relative URI references. Defaults to null. |
INamespaceMapper | namespaceMap | The namespace map to use for the resolution of QNames. If not specified, a default NamespaceMapper instance will be created. |
bool | normalizeLiteralValues | Whether or not to normalize the value strings of literal nodes. |
IUriFactory | uriFactory | The factory to use to create URIs. Defaults to the root UriFactory instance. |
NodeFactory(NodeFactoryOptions, INamespaceMapper, IUriFactory)
Creates a new Node Factory.
Declaration
public NodeFactory(NodeFactoryOptions options, INamespaceMapper namespaceMap = null, IUriFactory uriFactory = null)
Parameters
Type | Name | Description |
---|---|---|
NodeFactoryOptions | options | Configuration options for this node factory. |
INamespaceMapper | namespaceMap | The namespace map to use for the resolution of QNames. If not specified, a default NamespaceMapper instance will be created. |
IUriFactory | uriFactory | The factory to use to create URIs. Defaults to the root UriFactory instance. |
Properties
| Edit this page View SourceBaseUri
Get or set the base URI used to resolve relative URI references.
Declaration
public Uri BaseUri { get; set; }
Property Value
Type | Description |
---|---|
Uri |
Remarks
If BaseUri is null, attempting to invoke CreateUriNode(Uri) with a relative URI or CreateUriNode(string) with a QName that resolves to a relative URI will result in a RdfException being raised.
LanguageTagValidation
Get or set the type of validation to apply to language tags when creating language-tagged literal nodes.
Declaration
public LanguageTagValidationMode LanguageTagValidation { get; set; }
Property Value
Type | Description |
---|---|
LanguageTagValidationMode |
NamespaceMap
Get the namespace map for this node factory.
Declaration
public INamespaceMapper NamespaceMap { get; }
Property Value
Type | Description |
---|---|
INamespaceMapper |
NormalizeLiteralValues
Get or set the flag that controls whether the value strings of literal nodes should be normalized on creation.
Declaration
public bool NormalizeLiteralValues { get; set; }
Property Value
Type | Description |
---|---|
bool |
UriFactory
Get or set the factory to use when creating URIs.
Declaration
public IUriFactory UriFactory { get; set; }
Property Value
Type | Description |
---|---|
IUriFactory |
ValidateLanguageSpecifiers
Get or set the flag that controls whether or not language tags are validated when creating language-tagged literal nodes.
Declaration
[Obsolete("Use LanguageTagValidation to set the validation mode.")]
public bool ValidateLanguageSpecifiers { get; set; }
Property Value
Type | Description |
---|---|
bool |
Remarks
This property is now deprecated and replaced by LanguageTagValidation. Setting this property to 'true' will set LanguageTagValidation to Turtle. Setting this property to 'false' will set LanguageTagValidation to None.
Methods
| Edit this page View SourceCreateBlankNode()
Creates a Blank Node with a new automatically generated ID.
Declaration
public IBlankNode CreateBlankNode()
Returns
Type | Description |
---|---|
IBlankNode |
CreateBlankNode(string)
Creates a Blank Node with the given Node ID.
Declaration
public IBlankNode CreateBlankNode(string nodeId)
Parameters
Type | Name | Description |
---|---|---|
string | nodeId | Node ID. |
Returns
Type | Description |
---|---|
IBlankNode |
CreateGraphLiteralNode()
Creates a Graph Literal Node which represents the empty Sub-graph.
Declaration
public IGraphLiteralNode CreateGraphLiteralNode()
Returns
Type | Description |
---|---|
IGraphLiteralNode |
CreateGraphLiteralNode(IGraph)
Creates a Graph Literal Node which represents the given Sub-graph.
Declaration
public IGraphLiteralNode CreateGraphLiteralNode(IGraph subgraph)
Parameters
Type | Name | Description |
---|---|---|
IGraph | subgraph | Subgraph. |
Returns
Type | Description |
---|---|
IGraphLiteralNode |
CreateLiteralNode(string)
Creates a Literal Node with the given Value.
Declaration
public ILiteralNode CreateLiteralNode(string literal)
Parameters
Type | Name | Description |
---|---|---|
string | literal | Value of the Literal. |
Returns
Type | Description |
---|---|
ILiteralNode |
CreateLiteralNode(string, string)
Creates a Literal Node with the given Value and Language.
Declaration
public ILiteralNode CreateLiteralNode(string literal, string langSpec)
Parameters
Type | Name | Description |
---|---|---|
string | literal | Value of the Literal. |
string | langSpec | Language Specifier for the Literal. |
Returns
Type | Description |
---|---|
ILiteralNode |
CreateLiteralNode(string, Uri)
Creates a Literal Node with the given Value and Data Type.
Declaration
public ILiteralNode CreateLiteralNode(string literal, Uri datatype)
Parameters
Type | Name | Description |
---|---|---|
string | literal | Value of the Literal. |
Uri | datatype | Data Type URI of the Literal. |
Returns
Type | Description |
---|---|
ILiteralNode |
CreateTripleNode(Triple)
Creates a node that quotes the given triple.
Declaration
public ITripleNode CreateTripleNode(Triple triple)
Parameters
Type | Name | Description |
---|---|---|
Triple | triple | The triple to be the quoted value of the created node. |
Returns
Type | Description |
---|---|
ITripleNode |
CreateUriNode()
Creates a URI Node that corresponds to the current Base URI of the node factory.
Declaration
public IUriNode CreateUriNode()
Returns
Type | Description |
---|---|
IUriNode | A new URI Node. |
Exceptions
Type | Condition |
---|---|
RdfException | Raised if BaseUri is currently null. |
CreateUriNode(string)
Creates a URI Node for the given QName using the Graphs NamespaceMap to resolve the QName.
Declaration
public IUriNode CreateUriNode(string qName)
Parameters
Type | Name | Description |
---|---|---|
string | qName | QName. |
Returns
Type | Description |
---|---|
IUriNode | A new URI node. |
CreateUriNode(Uri)
Creates a URI Node for the given URI.
Declaration
public IUriNode CreateUriNode(Uri uri)
Parameters
Type | Name | Description |
---|---|---|
Uri | uri | URI. |
Returns
Type | Description |
---|---|
IUriNode |
CreateVariableNode(string)
Creates a Variable Node for the given Variable Name.
Declaration
public IVariableNode CreateVariableNode(string varName)
Parameters
Type | Name | Description |
---|---|---|
string | varName |
Returns
Type | Description |
---|---|
IVariableNode |
GetNextBlankNodeID()
Creates a new unused Blank Node ID and returns it.
Declaration
public string GetNextBlankNodeID()
Returns
Type | Description |
---|---|
string |
ResolveQName(string)
Resolve a QName to a URI using this factory's NamespaceMap and BaseUri.
Declaration
public Uri ResolveQName(string qName)
Parameters
Type | Name | Description |
---|---|---|
string | qName |
Returns
Type | Description |
---|---|
Uri |