Class: RDF::NQuads::Format
Overview
N-Quads format specification.
Class Method Summary collapse
-
.detect(sample) ⇒ Boolean
Sample detection to see if it matches N-Quads (or N-Triples).
-
.name ⇒ Object
Human readable name for this format.
Methods inherited from Format
accept_type, accept_types, cli_commands, content_type, content_types, each, file_extension, file_extensions, for, reader, reader_symbols, reader_types, symbols, to_sym, uri, uris, writer, writer_symbols, writer_types
Class Method Details
.detect(sample) ⇒ Boolean
Sample detection to see if it matches N-Quads (or 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.
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/rdf/nquads.rb', line 40 def self.detect(sample) sample.match?(%r( (?:\s*(?:<[^>]*>) | (?:_:\w+)) # Subject \s* (?:\s*<[^>]*>) # Predicate \s* (?:(?:<[^>]*>) | (?:_:\w+) | (?:"[^"\n]*"(?:^^|@\S+)?)) # Object \s* (?:\s*(?:<[^>]*>) | (?:_:\w+)) # Graph Name \s*\. )x) && !( sample.match?(%r(@(base|prefix|keywords)|\{)) || # Not Turtle/N3/TriG sample.match?(%r(<(html|rdf))i) # Not HTML or XML ) end |
.name ⇒ Object
Human readable name for this format
57 |
# File 'lib/rdf/nquads.rb', line 57 def self.name; "N-Quads"; end |