class Output implements Verifiable {

    @Override
    public void verify() throws InvalidSyntaxException {
        if(nullOutput) return;
        if(isConsoleOutput()) return;
        if(!isAbsolute() && (relativePath==null || relativeTo==null)) throw new InvalidSyntaxException("output is neither absolute nor relative");
        if(name==null) throw new InvalidSyntaxException("no strategy to calculate output filename is defined");
    }

    public  Output();

}