public GedcomObjectFactory findFactoryForTag(String tag) {
		if (tag.equalsIgnoreCase("SOUR"))
			return sourceFactory;
		else if (tag.equalsIgnoreCase("NOTE"))
			return noteFactory;
		else if (tag.equalsIgnoreCase("NAME"))
			return nameFactory;
		
		GedcomObjectFactory factory = eventHash.get(tag);
		if (factory != null)
			return factory;
		
		factory = attributeHash.get(tag);
		if (factory != null)
			return factory;
		
		return null;
	}