Will we be able to use Freenet as a file system, by inserting inode files in xml/rdf format, or another format? #950
Replies: 1 comment
-
There already exists an ontology draft to describe file systems: Nepomuk File Ontology (NFO). Here is what the inodes of a directory and its files could look like according to this ontology (turtle syntax): @prefix freenet: <https://freenet.org/ontology/> .
@prefix nie: <http://www.semanticdesktop.org/ontologies/2007/01/19/nie/v1.2/> .
@prefix nfo: <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo/v1.2/> .
@prefix ex: <http://www.example.org/ns#> .
[] a nfo:Folder ;
a nfo:Website ;
nfo:fileName "My_Folder" ;
ex:fileGroup freenet:groupHash ;
nfo:fileOwner freenet:ownerHash ;
nfo:fileCreated "2023-10-15T20:30:49.000000000-05:00" ;
nfo:fileLastModified "2023-10-15T20:31:23.000000000-05:00" ;
nfo:permissions "0755" ;
ex:hasMetadata freenet:foldermetadataHash ;
ex:hasContent freenet:fileHash ;
ex:hasContent freenet:filemetadataHash .
freenet:fileHash a nfo:File ;
a nfo:HtmlDocument ;
nie:mimeType "application/xhtml+xml" ;
nfo:belongsToContainer [] ;
nfo:fileName "My_File.html" ;
ex:fileGroup freenet:groupHash ;
nfo:fileOwner freenet:ownerHash ;
nfo:fileSize "102400" ;
nfo:fileCreated "2023-10-15T20:30:49.000000000-05:00" ;
nfo:fileLastModified "2023-10-15T20:31:23.000000000-05:00" ;
nfo:permissions "0644" ;
ex:hasMetadata freenet:filemetadataHash .
freenet:filemetadataHash a nfo:File ;
a nfo:Document ;
nie:mimeType "application/rdf+xml" ;
nfo:belongsToContainer [] ;
nfo:fileName "My_File.rdf" ;
ex:fileGroup freenet:groupHash ;
nfo:fileOwner freenet:ownerHash ;
nfo:fileSize "10240" ;
nfo:fileCreated "2023-10-15T20:30:49.000000000-05:00" ;
nfo:fileLastModified "2023-10-15T20:31:23.000000000-05:00" ;
nfo:permissions "0644" ;
ex:isMetadataof freenet:fileHash . The inodes could be split into several files or grouped into one, like here. Before being used, the data -- inodes or files -- should be verified by verifying agents: either the owner of the data -- in this case the user trusts the owner -- or by other agents -- in this case the user trusts other agents on a web of trust. After verifying the data, the verifying agents produces new metadata and signs them, allowing applications to use the data without needing to double-verify it. These checks can be both technical (file type) or content-related (anti-spam or anti-malware filter). Freenet could offer a low-level infrastructure for retrieving data, and NFO a high-level infrastructure for building folders and files inodes, similar to those found in a normal file system. |
Beta Was this translation helpful? Give feedback.
-
Terminology: can we consider the store of the next Freenet as a file system, and the file uris as inode numbers? From this point of view, will it be possible to insert special files into the Freenet store, including name, location, type and size metadata of other files, which would imitate the data structure of inodes ? This would create folder files and file trees similar to those found in file systems. I'm thinking about creating such inode file types in xml/rdf, potentially in a binary format like EXI (Efficient Extensible Interchange). Is this worth thinking about, or will the architecture of the next Freenet not allow this?
Beta Was this translation helpful? Give feedback.
All reactions