Xesam meta-meta-data spec needs attention.
Mikkel Kamstrup Erlandsen
mikkel.kamstrup at gmail.com
Wed May 2 11:52:33 PDT 2007
2007/5/2, Evgeny Egorochkin <phreedom.stdin at gmail.com>:
>
> On Wednesday 02 May 2007 15:26:14 Sebastian Trüg wrote:
> > > $TYPE(required)
> > > Property data type.
> > > Valid values: string, string_enum, string_enum_ext, integer, float,
> > > boolean, datetime, binary.
> > > string_enum type is a property that can only take one of the list of
> > > valid values provided by $VALUES.
> > > string_enum_ext type is a property that can take any string value,
> > > however $values list provides
> > > suggested values of this property.
> >
> > How about using xml schema types here. That way a later mapping to RDF
> will
> > be easy and Nepomuk can stay compatible without an artificial mapping.
> The
> > only problem here are the enumerations. XML Schema does support creating
> > enumerations but I think they are complex types. How about this: the
> type
> > will stay a string or an int or whatever. But if the VALUES field is set
> it
> > is to be treated as an enumeration. I don't think we need the extra
> types
> > here.
>
> You can have a string type instead of 3: string, string_enum,
> string_enum_ext.
> This information is in fact redunant. This was done only to improve
> readability.
I don't think we should allow *all* simple types from xml schema (for
example the duration type seems out of place). So string, boolean, double,
date - which maps to the obvious counterparts (date maps to dateTime).
> > $VALUES(required if $TYPE=string_enum or string_enum_ext),
> > > $LOCALIZED_VALUES Property value constraints. Default = no
> constraints.
> > > if $TYPE=integer|datetime|float, $VALUES=value1|value2|value3
> > > if $TYPE=string, $VALUES=validation regexp
> > > if $TYPE=string_enum, $VALUES=value1|value2|value3
> > > if $TYPE=string_enum_ext, $VALUES=value1|value2|value3|*(or)
> > > This syntax lets us directly use $VALUES as a regexp for validating
> > > user input. Yet it's syntax
> > > is developer- and translator- friendly.
> > > Suggestions on regex subset are welcome. KDE and Strigi is going to
> use
> > > QValidator and QRegExp for this.
> > >
> > > $RANGE
> > > Numeric property allowed value range. Default = no constraints.
> > > $RANGE=[minValue,maxValue>
> > > [ and ] = inclusive. < and > = exclusive.
> >
> > Actually there is no need to have RANGE and VALUES. Just merge them into
> > range:
> > RANGE=1,4,5,2.3
> > RANGE=1-7
> > RANGE=hello,bello,wello
>
> The idea behind values= was to:
> 1) allow regexps
> 2) seamlessly integrate enumerations into these regexps
> 3) have a compact, clean format for this.
Ok, I can see the point in removing string_enum and string _enum_ext and I
like Sebastians proposal. What is exactly the idea behind string_enum_ext
anyway? If you can use arbitrary values outside the enumeration then what's
the point of the enumeration?
Also, why do we need to enforce that metadata matches a regexp? Wouldn't it
be enough that the spec defined that we URI field should contain a qualified
uri?
Also i think it might suffice to specify numeric ranges like 1.5-3.756 and
not use brackets as suggested - {=inclusive, <=exclusive... Just define that
all ranges are inclusive.
Cheers,
Mikkel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freedesktop.org/archives/xdg/attachments/20070502/d558957c/attachment.htm
More information about the xdg
mailing list