<?xml version="1.0" ?>
<DataSources>
	<!--
		record: active
		field: searchable
		container setting "cont_custom_md": on (for optional and local records)
		subtype and -id
	-->
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- enum global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, vd.value, vd.idx
			FROM adv_md_values_enum val
			JOIN adv_mdf_enum vd ON (val.field_id = vd.field_id AND value_index = idx)
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type)
			WHERE robj.optional = 0
			AND rec.active = 1
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?)
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="idx" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- enum global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, vd.value, vd.idx
			FROM adv_md_values_enum val
			JOIN adv_mdf_enum vd ON (val.field_id = vd.field_id AND value_index = idx)
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type)
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1
			AND rec.active = 1
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?)
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="idx" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- enum local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, vd.value, vd.idx
			FROM adv_md_values_enum val
			JOIN adv_mdf_enum vd ON (val.field_id = vd.field_id AND value_index = idx)
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type)
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0
			AND rec.active = 1
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?)
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="idx" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<!--
		record: active
		field: searchable
		container setting "cont_custom_md": on (for optional and local records)
		subtype and -id
	-->
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- text global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_ltext val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);			
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- text global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_ltext val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- text local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_ltext val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- date global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_date val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);					
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- date global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_date val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);	
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- date local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_date val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- datetime global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_datetime val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);					
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- datetime global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_datetime val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);					
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- datetime local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_datetime val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- float global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_float val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);		
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- float global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_float val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);				
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- float local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_float val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- int global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_int val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);		
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- int global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_int val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);	
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- int local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_int val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- extlink global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value, val.title
			FROM adv_md_values_extlink val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);			
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
		<Field store="YES" index="ANALYZED" column="title" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="title" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- text global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value, val.title
			FROM adv_md_values_extlink val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
		<Field store="YES" index="ANALYZED" column="title" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="title" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- extlink local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value, val.title
			FROM adv_md_values_extlink val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
		<Field store="YES" index="ANALYZED" column="title" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="title" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- intlink global required -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_intlink val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);			
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- intlink global optional -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_intlink val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 1 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND IFNULL(rec.parent_obj, 0) = 0
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>
	<DataSource type="JDBC" action="append">
		<Query>
			<!-- intlink local -->
			SELECT concat('advancedMetaData_', val.field_id) field_name, val.field_id, val.value
			FROM adv_md_values_intlink val
			JOIN adv_mdf_definition def ON (def.field_id = val.field_id)
			JOIN adv_md_record rec ON (rec.record_id = def.record_id)
			JOIN adv_md_record_objs robj ON (robj.record_id = rec.record_id AND robj.sub_type = val.sub_type) 
			JOIN container_settings cont ON (cont.id = val.obj_id)
			WHERE robj.optional = 0 
			AND rec.active = 1 
			AND def.searchable = 1
			AND cont.keyword = 'cont_custom_md'
			AND cont.value = 1
			AND rec.parent_obj = val.obj_id
			AND robj.obj_type IN (?)
			AND val.obj_id IN (?)
			AND val.sub_type IN (?) 
			AND val.sub_id IN (?);
		</Query>
		<Param format="list" type="string" value="objType" />
		<Param format="list" type="int" value="metaRbacId" />
		<Param format="list" type="string" value="metaType" />
		<Param format="list" type="int" value="metaObjId" />
		<Field store="YES" index="ANALYZED" column="value" type="text" dynamicName="field_name" />
		<Field store="YES" index="ANALYZED" column="value" type="text" name="metaData" />
	</DataSource>      
</DataSources>
