Successivo

Linux

Come inserire metadati per effettuare ricerche precise con Linux

Marco Fioretti | 1 Marzo 2016

Linux

I metadati sono, in generale, “dati a proposito di altri dati” o documenti. Sono quelle informazioni senza le quali è […]

I metadati sono, in generale, “dati a proposito di altri dati” o documenti. Sono quelle informazioni senza le quali è molto difficile dare contesto, significato e connessioni ai dati, in maniera strutturata e soprattutto utilizzabile dai computer. Il testo di una chiamata telefonica o di un messaggio email, per esempio, è un tipo grezzo di dato, o se preferiamo di documento. Nome di mittente e destinatario, oggetto, indirizzo a cui replicare e ora d’invio, invece, sono alcuni metadati associati allo stesso documento. Nel caso di un libro elettronico, i metadati più rilevanti potrebbero essere nome dell’autore, editore, data di pubblicazione e codice Isbn. È facile capire che è proprio la disponibilità  di inserire metadati a fare la differenza fra ricerche rapide, con risultati precisi, e altre talmente vaghe da essere praticamente inutili. Diventa quindi importante sapere quali formati di file sono più adatti per generazione e analisi dei rispettivi metadati.

Dai tutorial su Tracker (https://projects.gnome.org/tracker) si può imparare che la differenza fra etichette e metadati è che le prime sono informazioni conservate al di fuori dei file a cui si riferiscono, mentre i metadati sono quelle scritte nel file stesso, in appositi campi. In realtà  non è così, anzi! Sempre di metadati si tratta, comunque queste informazioni vengano chiamate, e ovunque vengano conservate, cioè dentro o fuori i singoli file a cui si riferiscono. Più precisamente, dobbiamo dire che conservare i metadati internamente o esternamente fa una grossa differenza, ma solo nella loro gestione e condivisione, non certo nella loro natura.

Conservare i metadati di alcuni file esternamente, ovvero in indici e database indipendenti, è indispensabile per effettuare ricerche veloci e flessibili. Non è detto che questo sia sempre possibile: l’esempio più facile è quando si devono eseguire ricerche su file non generati da noi, magari ricevuti su un disco esterno, da qualche collega.

Inserire i metadati di un file al suo interno, invece significa poter sempre avere e offrire accesso a quelle informazioni. Anche se si cambia programma di ricerca, sistema operativo o computer, o quando quel file va condiviso con altri. Se poi, come sempre avviene in pratica, i metadati sono anche scritti in formati facilmente elaborabili da software, diventa possibile sia copiarli automaticamente in, o da, indici esterni, sia analizzarli in qualsiasi maniera.

Un primo svantaggio di questo approccio è che, di regola, è più difficile inserire metadati automaticamente in grandi quantità  di file, senza conoscenze almeno basilari di scripting. L’altro, irrilevante nella maggioranza dei casi ma “pericoloso” negli altri, è legato alla privacy, come è facile capire con un esempio forse banale, ma efficace. Aggiungere in Tracker etichette come “noioso” o “insopportabile” al curriculum di un collega, o a un racconto scritto da un amico non crea problemi anche se il file viene aperto da terzi. Scrivere la stessa cosa nella sezione metadati di quei file vuol dire ricordarsi di crearne una copia “pulita”, cioè senza metadati, ogni volta che quel file va condiviso…

Per quanto riguarda i documenti di testo, gli standard migliori per includere metadati nei file, al fine di fare ricerche più efficaci o altri tipi di elaborazione con software Open Source sono sostanzialmente due: OpenDocument e Yaml. Il primo non è altro che un archivio zip in cui è sempre presente anche un file a parte, chiamato “meta.xml”, che contiene appunto tutti i metadati relativi al documento cui è allegato. Il pannello di Libre Office apribile selezionando “File->Proprietà ” non è altro che un’interfaccia grafica per modificare il contenuto di meta.xml. Se serve, questo file è comunque modificabile anche con qualsiasi editor di testo, o script relativamente semplici.

La parola Yaml è un acronimo ricorsivo, nella migliore tradizione Unix, che sta per “YAML Ain’t Markup Language” (“Yaml non è un linguaggio di Markup”, https://yaml.org), utilizzabile nei formati di testo semplice come Markdown (https://daringfireball.net/projects/markdown). Yaml non è altro che uno standard per inserire i metadati di un file di testo semplice al suo inizio, in un formato semplicissimo da scrivere a mano, ma facilmente elaborabile da un computer. A titolo di esempio, l’intestazione Yaml di questo articolo potrebbe apparire così:
---
title: "Come inserire metadati con Linux per effettuare ricerche precise"
tags: [linux, desktop, indicizzazione]
authors:
- name: Marco F.
affiliation: Freelance
---

Tre trattini all’inizio e alla fine dei metadati, e campi delimitati da ritorni a capo e (pochissima) altra punteggiatura. Semplice, no?
Marco Fioretti