001    package com.hammurapi.reasoning;
002    
003    import java.util.Map;
004    
005    /**
006     * Factory for reasoning sessions.
007     * @author Pavel Vlasov
008     *
009     * @param <S> Reasoning session type.
010     */
011    public interface BackwardReasoningSessionFactory {
012    
013            /**
014             * Creates a new reasoning session.
015             * @param inputs Input fact sources.
016             * @param properties Vendor-specific session properties.
017             * @return New reasoning session.
018             * @throws ReasoningException
019             */
020            BackwardReasoningSession createSession(FactSource[] inputs, Map<?,?> properties) throws ReasoningException;
021    }