extended psj base data behavior with some loot from psjbasedoc