generic marker structure