[Zope-CMF] Re: Metadata & Tool Questions

Tres Seaver tseaver at palladion.com
Tue Oct 31 16:04:25 EST 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Doyon, Jean-Francois wrote:
> Hello,
> 
> The organization I work for has stringent metadata requirements, and
> as such I am now focusing my attention on metadata support in Zope
> and the CMF.
> 
> (Zope 2.10, CMF 2.0.0)
> 
> A few questions:
> 
> 1) Are there GenericSetup import/export scripts out there for the
> metadata tool? I need to add elements and controlled vocabularies.
> 
> 2) Some DC elements support the idea of schemes for specifying
> controlled vocabularies (notably the Subject), has anyone implemented
> functionality supporting this in their CMF?  Has there been
> discussion on the topic?

Actually, almost any of the elements could do this:  Rights, Format, and
Language are also prime candidates.

> 3) The policies defined in the metadata tool don't seem to be
> enforced in the Dublin Core implementation.  Any great reason?
> Otherwise, I'm going to try tying specific schema implementations
> (Such as DCMI, though I have others) into the tool, for actual policy
> enforcement.

The reason enforcement isn't "wired in" is because the choice of when to
do the enforcement is a business policy:  some sites may require that
the constraints be enforced whenever posting from the metadata form;
others may require it only at a given workflow transition.  The choice
is therefore in the implementor's hands.

> Right now it's looking like my end goal is:
> 
> 1) GenericSetup-driven tool configuration, for per site metadata
> policy definitions.

The GS representation might be:

  - Tool writes one XML file per schema into a 'metadata' subdirectory
    of the profile.  'DCMI' (which is always present) will be treated
    the same way.

  - The schema XML file should be a container for elements, each of
    which contains per-type policies.  E.g.:

     <schema id="DCMI">
      <element id="Subject">
       <policy
         content_type="Document"
         is_required="True"
         supply_default="False"
         default_value=""
         enforce_vocabulary="True">
        <vocabulary>Press Release</vocabulary>
        <vocabulary>Product Announcement</vocabulary>
         ...
       </policy>
       ...
      </element>
      ...
     <schema>

    Having the 'content_type' attribute blank for a policy would
    mark it as the default.

> 2) Extension beyond DCMI

The tool already supports additional schemas as subobjects.  There are
generic APIs which take a schema ID as their first argument.

> 3) Support many possible vocabularies through scheme support for a
> given element policy.

Already there, if I understand you (vocabulary for an element can be
sete on a per-content-type basis).

> 3) Support remote vocabularies through web services/xml files.

*Not* there.  This would need essentially a replacement of the tool, at
the moment (there are big-time performance implications of
out-of-process vocabularies).

> 4) Tie schema implementation such as DublinCoreImpl into the policy
> tool for enforcement.

Policy driven.  Should be tied in to "modified" or "workflow transition"
events, rather than hard-wired in.

> This is a fair amount of work, so before I embark upon it, I figured
> I'd see who's done/thought what out there along those lines ...



Tres.
- --
===================================================================
Tres Seaver          +1 202-558-7113          tseaver at palladion.com
Palladion Software   "Excellence by Design"    http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFR7pY+gerLs4ltQ4RAt+xAJ9DA12Z2FFjRI3CUFOnTAN5g7SuVwCgt+Po
lgePKptsTVi/6/1RbvlU6Rg=
=nyZX
-----END PGP SIGNATURE-----



More information about the Zope-CMF mailing list