Skip to content

From binary to specific inputstream #143

@bjdmeest

Description

@bjdmeest

An open issue to get some discussion going:

The current spec specifies rml:compression X as a way to specify

from this binary file, use decompression algorithm X, and return the first file you find as an inputstream

example:

<#JSON> a rml:LogicalSource;
     rml:source [ a rml:Source, rml:FilePath;
       rml:path "/path/to/data.json.gz";
       rml:compression rml:gzip; # GZip compression
     ];

I have the feeling this can be generalized to specify

from this binary file, use 'input stream retrieval algorithm X', use 'path selector Y', to return an inputstream

Concrete use case is mapping, e.g., XMP metadata from image files

<#XML> a rml:LogicalSource;
     rml:source [ a rml:Source, rml:FilePath;
       rml:path "/path/to/picture.heif";
       rml:inputStream [
           rml:binaryInterpreter rml:heif_xmp
     ];

But this could also be used for the first example:

<#JSON> a rml:LogicalSource;
     rml:source [ a rml:Source, rml:FilePath;
       rml:path "/path/to/data.json.gz";
       rml:inputStream [
           rml:binaryInterpreter rml:gunzip
           rml:streamReference "relative/path/to/specific/file/in/gz/file.json"
     ];

We extend from 'compressed' files to 'all types of binary files', WDYT?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions