XoWiki does not do anything special in this regard. Adding a service contract for the type like the following should be sufficient. One can reuse the datasouce and url implementations from xowiki, if nothing special is needed. xowiki uses the output of the method "render" for indexing, which can be overloaded in the derived types.
acs_sc::impl::new_from_spec -spec {
name "::xowiki::Page"
aliases {
datasource ::xowiki::datasource
url ::xowiki::url
}
contract_name FtsContentProvider
owner xowiki
}
It would be possible to include a flag in the type definition (xowiki class) to state whether the type should be included for indexing. If the flag is set, it could issue the above sc automatically. However, i am not sure whether this is needed.
Items with publish_status "production" are not indexed.