AT Vocabulary Manager

by Jens W. Klein last modified Mar 26, 2013 02:20 PM

A central pluggable vocabulary library for use with Archetypes based products, CMFMetadata and other Products. It supports flat, hierachical and VDEX based vocabularies.

Project Description

  • ATVocabularyManager offers central through the Plone management of dynamic vocabularies.
  • This product is based on Archetypes and made to work with Archetypes as well as with other Products. It is intended use is within Archetypes Fields. Using it as a vocabulary provider for CMFMetadata worked out fine too.
  • to use a managed vocabulary simply add the term vocabulary = NamedVocabulary("myvocabulary") to the fields of your Archetypes Schema, import NamedVocabulary from this Product and create your vocabulary with id myvocabulary in portal_vocabularies tool (available through Plone Site-Setup).
  • ATVocabularyManager supports:
    • simple flat key - value vocabularies,
    • tree like hierachical vocabularies,
    • IMS Vocabulary Definition Exchange Format (VDEX) aware vocabularies with XML Import and Export.
  • Multilingual vocabularies. With LinguaPlone vor simple- and tree-vocabularies, native support for VDEX-vocabularies (also w/o LingauPlone).
  • Vocabularies are pluggable types. ATVocabularyManager is prepared for extension with your special vocabulary type.
  • Each vocabulary term needs to be an CMF aware content type. Reuse normal rich content as a vocabularies.
  • ArchGenXML 1.4+ code-generator does full integration of ATVocabularyManager: via tagged value defined named vocabularies are registered transparently, VDEX-XML files are imported at install-time, stub vocabularies are created at install time and custom types are registered by just providing appropiate stereotypes.

Usage in own Archetypes Products

Home grown code

If you prefer to type your code with your fingers, just do it like in the following code-snippet:

   [...]
   from Products.ATVocabularyManager import NamedVocabulary
   [...]
   LinesField('officetypes',
        widget=SelectionWidget(
            label='Types',
        ),
        vocabulary=NamedVocabulary("""officetype""")
   ),   
   [...] 

And add a vocabulary with short name officetype to the vocabulary library

ArchGenXML

ArchGenXML fully supports ATVocabularyManager, read the Tutorial for further information.

Support

The author offers professional support. The classical well-working community support is found at the mailing-lists and IRC-channels around Plone.

Credits

Several parts of the code was created for the ZUCCARO project. ZUCCARO (Zope-based Universally Configurable Classes for Academic Research Online) is a database framework for the Humanities developed by the Bibliotheca Hertziana, Max Planck Institute for Art History For further information: "zuccaro.biblhertz.it"http://zuccaro.biblhertz.it

Copyright, Authors

copyright
2004-2006 by BlueDynamics Alliance, Klein + Partner KEG, Austria
and parts eduplone Open Source Business Network EEIG, Austria
2007 by BlueDynamics Alliance, Klein + Partner KEG, Austria
author
Jens Klein <jens@bluedynamics.com>
contributions
Harald Friessnegger 'frisi': i18n, cleanup, more cleanup of hierachical vocabularies (see HISTORY.txt), Spanky, et al
more contributions
several people committed smaller fixes and translations, thank you guys.
licence
This software is under a BSD-like Licence:
  Copyright (c) 2004-2006, BlueDynamics Tyrol - Klein + Partner KEG, Austria,
                           eduplone Open Source Business Network EEIG, Austria,
                2007, BlueDynamics Alliance - Klein + Partner KEG, Austria,    
                Jens Klein <jens.klein@bluedynamics.com> and the respective 
                authors.

  All rights reserved.

  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are
  met:

    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.     
    * Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following 
      disclaimer in the documentation and/or other materials provided 
      with the distribution. 
    * Neither the name of ATVocabularyManager nor the names of its 
      contributors may be used to endorse or promote products derived 
      from this software without specific prior written permission. 

  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Self-Certification

[X] Internationalized

[X] Unit tests

[ ] End-user documentation

[X] Internal documentation (documentation, interfaces, etc.)

[X] Existed and maintained for at least 6 months

[ ] Installs and uninstalls cleanly

[X] Code structure follows best practice

Current Release
Products.ATVocabularyManager atvocabularymanager-1.6.3

Released Jan 16, 2013 — tested with Plone 4.1, Plone 4.2

Download file Get AT Vocabulary Manager for all platforms
Products.ATVocabularyManager-1.6.3.zip
If you are using Plone 3.2 or higher, you probably want to install this product with buildout. See our tutorial on installing add-on products with buildout for more information.

All Releases

Version Released Description Compatibility Licenses Status
atvocabularymanager-1.6.3 Jan 16, 2013 More about this release…
Plone 4.1
Plone 4.2
UNKNOWN final
1.6 Feb 26, 2011 Works in Plone 4 now. VDEX implementation now faster (but does not migrate smoothly!). More about this release…
Plone 4
Plone 3
BSD final
1.4 Feb 23, 2008 Make the candidate a final, no changes were needed meanwhile. This release targets Plone 3.x and offers a much faster VDEX-type. More about this release…
Archetypes 1.5
Plone 3
Zope 2.10
OSI final
1.3rc1 Oct 30, 2007 Latest code for use with Plone 2.5.x More about this release…
Plone 2.5
GPL release-candidate
1.2 Jun 06, 2007 After some years we got a first final release, unbelievable! This release targets Plone 2.5. More about this release…
Plone 2.5
OSI final
1.1 ATVM ready for Plone 2.5 and LinguaPlone. More about this release…
Plone 2.5
Plone 3
GPL beta
1.0.0-beta2 First offical package! More about this release…
Plone 2.1
Plone 2.0.5
Archetypes 1.3.5
Archetypes 1.3.4
BSD beta