class RDF::NTriples::Format
N-Triples format specification.
Note: Latest standards activities treat N-Triples as a subset of Turtle. This includes application/n-triples mime type and a new default encoding of utf-8.
@example Obtaining an NTriples
format class
RDF::Format.for(:ntriples) #=> RDF::NTriples::Format RDF::Format.for("etc/doap.nt") RDF::Format.for(file_name: "etc/doap.nt") RDF::Format.for(file_extension: "nt") RDF::Format.for(content_type: "application/n-triples")
@see www.w3.org/TR/rdf-testcases/#ntriples @see www.w3.org/TR/n-triples/
Public Class Methods
detect(sample)
click to toggle source
Sample detection to see if it matches N-Triples
Use a text sample to detect the format of an input file. Sub-classes implement a matcher sufficient to detect probably format matches, including disambiguating between other similar formats.
@param [String] sample Beginning several bytes (about 1K) of input. @return [Boolean]
# File lib/rdf/ntriples/format.rb, line 36 def self.detect(sample) sample.match?(%r( (?:(?:<[^>]*>) | (?:_:\w+)) # Subject \s* (?:<[^>]*>) # Predicate \s* (?:(?:<[^>]*>) | (?:_:\w+) | (?:"[^"\n]*"(?:^^|@\S+)?)) # Object \s*\. )x) && !( sample.match?(%r(@(base|prefix|keywords)|\{)) || # Not Turtle/N3/TriG sample.match?(%r(<(html|rdf))i) # Not HTML or XML ) && !RDF::NQuads::Format.detect(sample) end
name()
click to toggle source
Human readable name for this format
# File lib/rdf/ntriples/format.rb, line 51 def self.name; "N-Triples"; end