ddc-core: split Pattern def into own module