Answered custom xml crawled properties

  • Thursday, January 26, 2012 7:31 PM
     
     

    I have installed Sharepoint Search Server 2010 and have added a content source of xml files. The source is being indexed and the data can be retrieved in a general search however, I would like to have the xml tags show up as crawled properties so that I can map them to managed properties. I see where this can be achieved with FAST and have also read that by default only XML tags two levels deep will be populated as crawled properties but I cant seem to get any to show up as crawled properties. Even tried putting XML attributes in the XML files hoping that they would show up as crawled properties but to no avail. Any help is appreciated.

    thanks

    jimmy

All Replies

  • Tuesday, January 31, 2012 8:39 AM
    Moderator
     
     

    Hi,

    To make the crawled properties in the xml file searchable, you should  create corresponding managed properties and map the crawled properties to the new managed properties.

    This blog: http://blogs.msdn.com/b/sharepointdev/archive/2012/01/25/creating-a-custom-xml-indexing-connector-for-fast-search-server-2010-for-sharepoint.aspx have detailed steps may help you.


    Xue-mei Chang

    TechNet Community Support

  • Tuesday, January 31, 2012 12:44 PM
     
     
    Yes, I do understand mapping crawled properties to managed properties. My issue is getting xml tags in my crawled xml files to show up as crawled properties. Are they supposed to show up as crawled properities  by default because the XML files are being crawled? Or is there something I need to do. After a full crawl, none of the tags in my XML files show up as crawled properties and there are no properties in my XML category. And again, this is not FAST search server, just Search Server 2010.
  • Thursday, May 10, 2012 11:56 AM
     
     

    I am having the same issue with the custom xml files , please let me know if you have solved the above issue regarding the crawl properties

    amitgt@hotmail.com

  • Thursday, May 17, 2012 7:37 PM
     
     Answered

    To resolve this issue, I installed the XML Ifilter from ifiltershop.com, configured their config file to crawl and extract the xml nodes that I want. The nodes then showed up as crawled properties which I could map to managed properties. Works like a champ. I am supprised that search server does not do this out of the box. Everyone that I was in contact with assumed that it was.

    • Marked As Answer by lambert901 Thursday, May 17, 2012 7:37 PM
    •  
  • Friday, May 25, 2012 12:47 AM
     
     

    Is there any documentation showing examples of how to setup the ifiltershop.com XmlFilterConfig.xml file.  I installed ifiltershop's xml ifilter but still am not getting any crawled properties.  It's probably an issue with the config file but I can't find any examples of what to put in the config file to have it work properly.  Right now there are zero items in my XML category after two full crawls.  Actually I have no idea if the crawler is actually using the ifltershop xml ifilter or just the canned one.  How can you tell?

    Here's my XmlFilterConfig.xml file right now:

    <?xml version="1.0" encoding="utf-8" ?> 
    <config>
    <content>
    <exclude>
    </exclude>
    <include>
    </include>
    </content>
    <metadata>
    <default>
    </default>
    <exclude></exclude>
    <include>//*</include>
    </metadata>
    </config>

    There's probably much more to it than what I have but I have no clue.  I only have one xml file to crawl and want all attributes / nodes in it to be made into crawled properties.  Verified that the xml file is in fact being crawled.  If I search for a term inside the xml file I get one result pointing to the xml file itself...just can't get any crawled properties created.

    Any ideas anyone?  Sorry about my noob-ness.

    Thanks!



  • Friday, May 25, 2012 12:34 PM
     
      Has Code

    This worked for me. I needed help from the vendor.

    <?xml version="1.0" encoding="utf-8" ?>
    <config>
                    <content>
                                    <exclude>
    					<xpath>//*</xpath>
                                    </exclude>
                                    <include>
    					<xpath>//lastname</xpath>
    					<xpath>//firstname</xpath>
    					
                                    </include>
                    </content>
                    <metadata>
                                    <default>
                                    </default>
                                    <exclude>
    					<xpath>//*</xpath>
    				</exclude>
                                    <include>
    				<mapping>
    					<xpath>//lastname</xpath>
    				</mapping>
    				<mapping>
    					<xpath>//firstname</xpath>
    				</mapping>
    				
                   	                </include>
                    </metadata>
    </config>