Das Dateiformat der Zettelkasten-Datendatei

Auf dieser Seite finden Sie eine detaillierte Beschreibung des Aufbaus des neuen Dateiformats, das im Zettelkasten 3 verwendet wird. Eine Beschreibung des Formats der bisherigen Windows-Version (Dateiformat 2.6) befindet sich hier.

Aktuelle Dateiformat-Versionsnummer

3.2

(Hinweis: Die Versionsnummer des Dateiformats muss nicht identisch mit der Versionsnummer des Zettelkasten-Programms sein!)

Veränderungen im Vergleich zu vorigen Formatversionen

Änderungen von 3.1 zu 3.2

  • Alle Elemente der Datei desktop.xml enthalten jetzt ein Attribut timestamp, das als eindeutige ID für jeden Eintrag auf dem Schreibtisch dient.
  • Die Datei desktopme.xml ist neu. Diese speichert bearbeitete Zettel, dessen Änderungen nur für den Schreibtisch wirksam sein sollen.
  • Die Datei desktopnt.xml ist neu. Diese speichert die Notizen, die man auf Schreibtischen anlegen kann.

Änderungen von 3.0 zu 3.1

  • Alle Elemente der Datei authorFile.xml enthalten jetzt ein Attribut f, das die Häufigkeit der Verwendung der jeweiligen Elemente in der Hauptdatendatei (zknFile.xml) zählt.
  • Alle Elemente der Datei keywordsFile.xml enthalten jetzt ein Attribut f, das die Häufigkeit der Verwendung der jeweiligen Elemente in der Hauptdatendatei (zknFile.xml) zählt.

Datendatei: .zkn3

Die Haupt-Daten-Datei erhält die Dateiendung “.zkn3“ und ist eine ZIP-Datei. Diese Datei enthält 7 XML-Dateien. Eine mit Metainformationen, die die Versionsnummer der Datendatei sowie die Beschreibung der Datendatei speichert. Daneben gibt es eine XML-Datei, die alle Hauptdaten enthält. Die Autorenangaben und die Schlagwörter sind jedoch nur als Indexnummern enthalten. Denn die Autoren und Schlagwörter werden jeweils in separaten XML-Dateien gespeichert. Dazu kommen gespeicherte Suchergebnisse, Lesezeichen und Schreibtischdaten jeweils als eigenständige XML-Dateien.

Wenn man also die Datei „dateiname.zkn3“ in „dateiname.zip“ umbenennt, kann man normal auf die darin enthaltenen XML zugreifen.

Die in der Datei enthaltenen XML-Dateien:

  • metaInformation.xml
  • zknFile.xml
  • authorFile.xml
  • keywordsFile.xml
  • bookmarks.xml
  • searchrequests.xml
  • desktop.xml
  • desktopme.xml
  • desktopnt.xml

metaInformation.xml

Die Elemente imagepath und attachmentpath speichern individuell für jeden Zettelkasten die Verzeichnisse für Grafiken/Bilder und Anhänge, die in den Zetteln eingebunden/angehängt sind.

<metainformation>
  <version id="3.2" />
  <description>Eine kurze Beschreibung des Zettelkastens</description>
  <imagepath />
  <attachmentpath />
</metainformation>

zknFile.xml

root element: zettelkasten

elements:

  1. zettel (an ID indicating the fixed position of a „zettel“ (entry) is not needed, since new entries are always added to the end of the xml-document.)
    1. (Optional) attributes of the zettel-element are:
      1. rating the rating-value of that entry, if it has been rated
      2. ratingcount indicates how many times an entry has been rated

child-elements of „zettel“

  1. title (the title of the entry)
  2. content (the content of each slip, the main text. may contain html-syntax due to formatting.)
  3. author (one or more index number(s) indicating the entry of the XML-data-file „authorFile“, separated by commas)
  4. keywords (one or more index number(s) indicating the entry of the XML-data-file „keywordFile“, separated by commas)
  5. manlinks (manual links refering to other entries, edited by the user)
  6. links (list of links to files or websites, separated by new elements called „link“)
    1. link (the single entries of the links)
    2. link (see above)
  7. misc (miscellaneous or orther comments, text, etc.)
  8. timestamp (saves creation and last changed date)
    1. created (the creation date of the entry, including time. format: yymmddhhmm)
    2. edited (the date when the entry was last edited, including time . format: yymmddhhmm)
  9. luhmann (used to indicate follower-entries of the current entry)

in XML style this would look like:

<zettelkasten>
  <zettel rating="4.5" ratingcount="1">
    <title>The title of this entry</title>
    <content>Now this is your abstract of what you have read and written as entry</content>
    <author>1</author>
    <keywords>1,3,6</keywords>
    <manlinks>17,29</manlinks>
    <links>
      <link>http://zettelkasten.danielluedecke.de</link>
      <link>/users/daniel/pdfs/Luhmann.pdf</link>
    </links>
    <misc>Luhmann also writes about this here and there...</misc>
    <timestamp>
      <created>0811271542</created>
      <edited>0812140759</edited>
    </timestamp>
    <luhmann>8,15,19</luhmann>
  </zettel>
</zettelkasten>

authorFile.xml

Diese Datei enthält die Literaturangaben. Die Liste ist nicht alphabetisch sortiert, sondern nach Reihenfolge der Eingabe. Dadurch ist gesichert, dass jede Angabe eine feste Indexnummer hat. Diese Indexnummern sind im author-Tag der Hauptdatei zknFile-xml enthalten.

Jeder Eintrag enthält zwei Attribute, wovon der zweite optional ist:

  • f, dessen Zahlenwert angibt, wie häufig diese Literaturangabe verwendet wird, d.h. in wie vielen Zetteln diese Angabe vorkommt.
  • bibkey (optional), eine Referenz auf eine Literaturangabe in einer BibTex-Datei.
<authors>
  <entry f="8" bibkey="luhsosy1984">Luhmann, Niklas (1984): Soziale Systeme. Frankfurt/Main: Suhrkamp</entry>
  <entry f="5" bibkey="luhgdg1997">Luhmann, Niklas (1997): Gesellschaft der Gesellschaft. Frankfurt/Main: Suhrkamp</entry>
</authors>

keywordsFile.xml

Diese Datei enthält die Schlagwörter des Zettelkastens. Die Liste ist nicht alphabetisch sortiert, sondern nach Reihenfolge der Eingabe. Dadurch ist gesichert, dass jede Angabe eine feste Indexnummer hat. Diese Indexnummern sind im keywords-Tag der Hauptdatei zknFile-xml enthalten.

Jeder Eintrag enthält das Attribut f, dessen Zahlenwert angibt, wie häufig dieses Schlagwort verwendet wird, d.h. in wie vielen Zetteln es vorkommt.

<keywords>
  <entry f="4">Soziale Systeme</entry>
  <entry f="1">Habermas</entry>
  <entry f="3">Grundlagen Systemtheorie</entry>
  <entry f="11">Phänomenologie</entry>
  <entry f="15">Wissenschaft</entry>
  <entry f="9">System und Umwelt</entry>
</keywords>

bookmarks.xml

Das Dokument ist in zwei Bereiche aufgeteilt. Der erste Bereich category enthält fortlaufend alle jemals eingetragenen Lesezeichen-Kategorien, unabhängig davon, ob sie aktuell verwendet werden oder nicht. Der zweite Bereich enthält die Lesezeichen. Das id-Attribut der entry-Elemente entspricht der Nummer des Zettels, für den das Lesezeichen gesetzt wurde. Der Text zwischen den Entry-tags ist der optionale Kommentar zu diesem Lesezeichen.

<bookmarks>
  <category>
    <entry>Name of Category 1</entry>
    <entry>Name of Category 2</entry>
  </category>
  <bookmark>
    <entry id="5" cat="1">This is the comment of the bookmark</entry>
    <entry id="9" cat="2">This is the comment of the bookmark</entry>
  </bookmark>
</bookmarks>

searchrequests.xml

Das Element searches ist das root-Element. Jede Suchanfrage wird durch das Element searchrequest beschrieben. Darin sind verschiedene Unterelemente enthalten, die die Suchanfrage definieren:

  • searchterms: die einzelnen Suchbegriffe, jeweils durch ein Unterelement term beschrieben
  • where: eine Zahl, die angibt, in welchen Bereichen (Schlagwörtern, Zettelinhalten, Autoren…) gesucht werden soll. Jedes einzelne Bit der Zahl steht für einen bestimmten Suchbereich, sodass diese mittels logisch-und-Verknüpfung abgefragt werden können
  • logical: ob die Suchanfrage logisch-und, logisch-oder oder logisch-nicht (Ausschluss) verknüpft ist
  • wholeword/matchcase: ob die Suche nur ganze Wörter und Groß-/Kleinschreibung berücksichtigt
  • synonyms: ob bei der Suche auch die Synonymbegriffe für die Suchbegriffe einbezogen wurden
  • regex: ob der Suchbegriff ein „normaler“ Begriff oder ein regulärer Ausdruck ist.
  • description: eine Beschreibung der Suchanfrage, basierend auf den vorigen Parametern
  • longdesc: eine ausführliche Beschreibung der Suchanfrage inklusive aller Suchbegriffe, logische Verknüpfung der Such etc.
  • results: die Zettelnummern, auf die die Suchanfrage zutrifft, oder kurz: die Suchergebnisse
<searches>
  <searchrequest>
    <searchterms>
      <term>luhmann</term>
      <term>computer</term>
    </searchterms>
    <where>16</where>
    <logical>1</logical>
    <wholeword>false</wholeword>
    <matchcase>false</matchcase>
    <synonyms>true</synonyms>
    <regex>true</regex>
    <description>
      "computer", "luhmann", und-verknüpft, Suche in Schlagwörtern, Literaturangaben, 
      Zetteln (und weitere...) (221037)
    </description>
    <longdesc>
      (hier steht eine ausführliche, mehrzeilige Beschreibung der Suche)
    </longdesc>
    <results>1106,1110,1380,1553,1556,1558,1560,1561,1566,1594,1595</results>
  </searchrequest>
</searches>

desktop.xml

  • The root-element is named desktops For each desktop, a new child named desktop is created. This child holds the content for one desktop.
  • The first Element is always bullet, a bullet-point. Bullet-points do always have the attribute name which holds the name of the bullet-point that is displayed in the jTree. Furthermore, each bullet-element automatically creates a child-element comment, even if a bullet-point has no comments.
  • comment is therefor always the first child-element of bullet.
  • Futher child-elements are the entries, named entry. Each entry-element has an id with the related entry-number from the main-datafile (see CDaten-class) and a timestamp which indicates when this entry was added to the desktop.
  • After the entries, each bullet has possible new bullet-elements as child-elements. These bullet-element indicate the next level of the outline, repeating the structure described here and above.
<desktops>
	<desktop name="Promotion">
		<bullet name="Gedankenstücke" timestamp="100330152200001" treefold="expand">
			<entry id="3" timestamp="090526093700002" />
			<entry id="4" timestamp="100330152754235" />
			<comment />
		</bullet>
		<bullet name="Literatur" timestamp="100330152200003" treefold="expand">
			<entry id="2" timestamp="090526093700004" />
			<bullet name="nicht viel" treefold="expand" timestamp="100409181019853">
				<entry id="8" timestamp="100409181037085" />
				<entry id="66" timestamp="100409181024993" />
				<entry id="68" timestamp="100409181024994" />
				<comment />
			</bullet>
			<comment />
		</bullet>
		<bullet name="Texte" timestamp="100330152200005" treefold="expand">
			<comment />
		</bullet>
		<bullet name="Denker+Theorien" timestamp="100330152200010" treefold="expand">
			<entry id="5" timestamp="090528152500011" />
			<comment />
		</bullet>
	</desktop>
	<desktop name="T2">
		<bullet name="K1" treefold="expand" timestamp="100330152803408">
			<entry id="8" timestamp="100330152807957" />
			<comment />
		</bullet>
	</desktop>
</desktops>

desktopme.xml

desktopnt.xml

<desktopNotes>
	<desktop name="Promotion">
		<notes1>Hier ist eine Notiz im Schreibtisch Promotion für das erste Notizen-Textfeld</notes1>
		<notes2 />
		<notes3 />
	</desktop>
</desktopNotes>
 
technik/dateiformat.txt · Zuletzt geändert: 2010/05/19 18:19 von daniel
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki