[KimDaBa] kimdaba rocks, html export, relaxng shema, mailing-list

Jean-Michel FAYARD jean-michel.fayard at moufrei.de
Mon Jan 12 13:03:08 GMT 2004


Hello, I love your software.
I have some random requests : 

* about the export in html : 
    Imagine a typical case : i have photo with my girlfriend, and I want
    to send that album to her. I « search » those photos, then click on
    « view images », then « File > Export to html »
    Currently, kimdaba complains that there is no item selected, and
    seems to export to an album, but this album is empty.
    This is wrong IMHO : in this case like in most case, I just want
    to export all photos which are in the current view.
    Can we change this behaviour ?

* about the ml
    the website http://gmane.org provides a very useful 
    NNTP <==> most mailing-lists of free-software projects <==> web interface

    It's very convenient to have all my mls in the same place, and
    with your favorite news client, you have a far better interface than
    usual web interfaces for searching and reading the ml.
    Wouldn't you mind to go here http://gmane.org/import.php to import
    the current archive[1] to the #gmane.comp.kde.kimdaba group
    which will be created soon. (I requested that)

    [1] http://sulaco.hrhansen.dk/pipermail/kimdaba.mbox/kimdaba.mbox


* Is kimdaba's database format documented anywhere ?
    I was looking for a DTD, XML shema or something else
    for a thing I will explain in a separate mail, but I 
    was not able to find it.

    If not, I've created a RelaxNG shema (compact syntax),
    mainly to see how the database looks like.
    It's not (yet) a reference, just a thing good enough to
    valid my current database.
-------------- next part --------------
datatypes xsd = "http://www.w3.org/2001/XMLSchema-datatypes"

start  = 
    element KimDaBa {  Config, Options, ConfigWindowSetup, Member-groups, Images }
Config = 
    element config  {  
	config.attlist,
	element SearchInfo {
	    attribute label { text },
	    attribute description { text },
	    element Options {
		text
	    }
	}
    }
Options	=
    element options {
	element option {
	    attribute icon	{ text },
	    attribute name	{ text },
	    attribute show	{ xsd:boolean },
	    attribute text	{ text },
	    element value {
		attribute value { text }
	    } *
	}*
    }


ConfigWindowSetup = 
    element configWindowSetup {
	Dock*, 
	SplitGroup*, 
	Widgets, 
	Geometry
    }
Dock =
    element dock {
	element name	    { text },
	element hasParent   { text },
	element dragEnabled { text }
    }
SplitGroup = 
    element splitGroup {
	element firstName	    { text },
	element secondName	    { text },
	element orientation	    { xsd:integer },
	element separatorPos	    { xsd:integer },
	element name		    { text },
	element hasParent	    { xsd:boolean },
	element dragEnabled	    { xsd:boolean }
    }
Widgets = 
    element centralWidget   { text },
    element mainDockWidget  { text }
Geometry = 
    element geometry {
	element x	{ xsd:integer },
	element y	{ xsd:integer },
	element width	{ xsd:integer },
	element height	{ xsd:integer }
    }


Member-groups = 
    element member-groups   {
	element member {
	    attribute group-name    { text },
	    attribute option-group  { text },
	    attribute member	    { text }
	}*
    }

Images	= 
    element images {
	element image {
	    image.attlist,
	    image.Options?,	
	    Drawings?
	}*
    }
image.Options	=
    element options {
	element option {
	    attribute name	{ text },
	    element value {
		attribute value { text }
	    } *
	}*
    }
Drawings = 
	element drawings {
		AnyElement*
	}

AnyElement =
  element * {
    (attribute * { text }
     | text
     | AnyElement)*
  }

image.attlist |=
    attribute monthFrom	{ xsd:integer },
    attribute dayFrom	{ xsd:integer },
    attribute yearTo	{ xsd:integer },
    attribute monthTo	{ xsd:integer },
    attribute file	{ text },
    attribute label	{ text },
    attribute angle	{ xsd:boolean },
    attribute dayTo	{ xsd:integer },
    attribute yearFrom	{ xsd:integer },
    attribute description{text }

config.attlist = 
    attribute passwd {text},
    attribute ensureImageWindowsOnScreen { xsd:boolean },
    attribute showDrawings	{ xsd:boolean },
    attribute htmlBaseURL	{ text },
    attribute thumbSize		{ xsd:integer },
    attribute showInfoBox	{ xsd:boolean },
    attribute trustTimeStamps	{ xsd:boolean },
    attribute viewerWidth_1024	{ xsd:integer },
    attribute exclude		{ xsd:integer }, # TODO : boolean ?
    attribute infoBoxPosition	{ xsd:integer },
    attribute viewerHeight_1024	{ xsd:integer },
    attribute locked		{ xsd:boolean },
    attribute showDate		{ xsd:boolean },
    attribute imageDirectory	{ text },
    attribute autoSave		{ xsd:integer },
    attribute version		{ text },   # TODO what version format ?
    attribute showDescription	{ xsd:boolean },
    attribute maxImages		{ xsd:integer },
    attribute htmlBaseDir	{ text }
 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: schemas.xml
Type: text/xml
Size: 155 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kphotoalbum/attachments/20040112/85674063/attachment.xml>


More information about the Kphotoalbum mailing list