[Zope-CMF] 'portal_metadata' tool in CVS
marc lindahl
marc@bowery.com
Mon, 07 May 2001 11:20:04 -0400
> From: Tres Seaver <tseaver@digicool.com>
>
> First, you want to be invoking it as 'portal_metadata'; I don't
> know how the other spelling is working at all for you.
Correct, I was typing it into the email, it was late...
> think the form needs to call them. It does need to be able to
> ask whether the vocabulary is enforced, though: imagine a site
> which provides "suggested" vocabulary, but allows members to
> enter other values (which might then eventually become part of
> the "suggested" vocabulary).
I was thinking then, you could in the form test for 'enforce' and if not,
then have both the select list and a text input, both set to, e.g.
subject:list - wouldn't that concatenate them? Adding to suggested would
mean changing MetadataTool.validateMetadata() I would guess.
> I think the spelling here would be, as you suggest, to remove the
> "hardcoded" methods from the interface ('listAllowedSubjects',
> 'listAllowedFormats', etc.) and instead expose 'getElementSpec',
> protecting the spec's query methods with the 'View' permission.
That would make it easier to implement a non-default DublinCore also.
> Right, I would probably add another "snippet" skin method which
> generates the selection widget and text field, given the DC
> element name; call it 'vocabulary_widgets' or some such
Makes sense, keeps it skinnable and changeable.
> (note
> as well that only the Subject metadata is "multi-valued" by
> default).
Another thing that could/should be checked... though I don't see that option
exposed in the portal_metadata tool, it seems to be hard coded when
everything is set up, though it could easily be added.
Still, I think there's alot to be said to enforcing a strict core for this,
to make things eventually easily searchable web-wide. For example, I was
looking around for a definitive list of languages, and found bits and
pieces, but not an official-looking list -- if there is one, it would be
good to have that included in the default DublinCore, since it's supposedly
a standard, and would facilitate (external) searches... no?