/* * This file is part of the HyperGraphDB source distribution. This is copyrighted * software. For permitted uses, licensing options and redistribution, please see * the LicensingInformation file at the root level of the distribution. * * Copyright (c) 2005-2010 Kobrix Software, Inc. All rights reserved. */ package org.hypergraphdb.type; /** * <p> * A <code>HGCompositeType</code> represents a HyperGraph type with several * dimensions. Each dimension has a name and is represented by a <code>HGProjection</code>. * </p> * * @author Borislav Iordanov */ public interface HGCompositeType extends HGAtomType { /** * <p>Return an <code>Iterator</code> listing the names of all * dimensions of this composite type. A projection function can be obtained * through the <code>getProjection</code> method. * </p> */ java.util.Iterator<String> getDimensionNames(); /** * <p>Get the projection function for a particular dimension.</p> * * @param dimensionName The name of the dimension. * @return The <code>HGProjection</code> instance. */ HGProjection getProjection(String dimensionName); }