Detailed introduction to XML-OpenSearch application
Many modern browsers have a Search box on the right side of the address bar. The default installation has Google search, etc. As shown below:
In fact, this is an application of OpenSearch. As long as you write the corresponding micro-format xml file, you can formulate the corresponding search box. Referring to the OpenSearch definition document, you can basically obtain the basic xml format. For example, a typical search
Many modern browsers have a search box on the right side of the address bar, and Google search is installed by default. As shown in the figure below:
In fact, this is an application of OpenSearch. As long as you write the corresponding micro-format xml file, you can formulate the corresponding search box. Referring to the OpenSearch definition document, you can basically obtain the basic xml format. For example, a typical search xml file can be specified like this.
<?xml version="1.0" encoding="UTF-8"?> <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <InputEncoding>utf-8</InputEncoding> <ShortName>ShortName</ShortName> <Description>Description</Description> <Image type="image/vnd.microsoft.icon">favicon</Image> <Url type="text/html" template="http://who.am.i/search?word={searchTerms}"/> </OpenSearchDescription>
The xml file above is easy to understand. Except for the fixed xml root, other definitions can be understood literally:
InputEncoding specifies the search encoding, which is determined according to the actual situation of the website
ShortName This is the short name of the search, such as "Google search"
Description A description of this search box, such as "Taobao shopping search - only you can't think of it, but you can't find anything you can't find"
Image is similar to the favicon of a web page, used for identification search
Url This is the most important parameter, specifying the search link. It has many parameters, generally use the {searchTerms} parameter to specify the search terms. The parameter type="text/html" indicates that the page is returned (the browser will jump to this page). If it is in other formats, it will be opened using the corresponding default program (such as type="application/rss xml" will be opened using an RSS reader).
Writing OpenSearch’s xml format is complete. For detailed information, please refer to its OpenSearch definition document. Next, we need to add this search to the page. There are basically two ways. They are to add the link tag in the head of the page (similar to RSS), and to add it using the Javascript method (such as defining a button to trigger). Adding link tags is very simple, the format is as follows
<link rel="search" type="application/opensearchdescription xml" href="http://who.am.i/search.xml" title="ShortName" />
Similar to RSS, rel and type are fixed, we mainly specify href (above) For the url path of xml, just use the absolute path (that is, starting with http://) and title (that is, the short title of the search) to be on the safe side. In this way, when you open this page in Explorer and Firefox, you can see the corresponding menu, as shown in the figure:
It is more troublesome to add using Javascript (perhaps the situation will be much better now). We mainly use browser extensions. There is a window.external.AddSearchProvider parameter in Explorer (detailed documentation). The typical calling method is as follows
window.external.AddSearchProvider('http://who.am.i/search.xml');
The link in the parameter is the content in the above link. Under Firefox it is possible to use the
window.sidebar.addSearchEngine( "http://who.am.i/search.xml", /* engine URL */ "favicon.ico", /* icon URL */ "ShortName", /* engine name */ "Description" ); /* category name */
parameters and examples as described in the sample code (official documentation). It is worth noting that Firefox2 and later versions have been "compatible" with Explorer's window.external.AddSearchProvider calling method (details). Then our corresponding Javascript code can be written like this (in order to be compatible with versions before Firefox2, add else if to judge. If you feel it is not necessary, you can not add it)
function addEngine(){ if (window.external || window.external.AddSearchProvider) { window.external.AddSearchProvider('http://who.am.i/search.xml'); } else if (window.sidebar && window.sidebar.addSearchEngine) { window.sidebar.addSearchEngine( "http://who.am.i/search.xml", "favicon.ico", /* icon URL */ "ShortName", /* engine name */ "Description" ); /* category name */ }}
In this way, you can register this function to the click event of a link or button, A confirmation box will pop up, as shown in the figure. After the user clicks Confirm, it will be added to the browser search box.
The above is the detailed content of Detailed introduction to XML-OpenSearch application. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Can XML files be opened with PPT? XML, Extensible Markup Language (Extensible Markup Language), is a universal markup language that is widely used in data exchange and data storage. Compared with HTML, XML is more flexible and can define its own tags and data structures, making the storage and exchange of data more convenient and unified. PPT, or PowerPoint, is a software developed by Microsoft for creating presentations. It provides a comprehensive way of

Using Python to merge and deduplicate XML data XML (eXtensibleMarkupLanguage) is a markup language used to store and transmit data. When processing XML data, sometimes we need to merge multiple XML files into one, or remove duplicate data. This article will introduce how to use Python to implement XML data merging and deduplication, and give corresponding code examples. 1. XML data merging When we have multiple XML files, we need to merge them

Convert XML data in Python to CSV format XML (ExtensibleMarkupLanguage) is an extensible markup language commonly used for data storage and transmission. CSV (CommaSeparatedValues) is a comma-delimited text file format commonly used for data import and export. When processing data, sometimes it is necessary to convert XML data to CSV format for easy analysis and processing. Python is a powerful

Implementing filtering and sorting of XML data using Python Introduction: XML is a commonly used data exchange format that stores data in the form of tags and attributes. When processing XML data, we often need to filter and sort the data. Python provides many useful tools and libraries to process XML data. This article will introduce how to use Python to filter and sort XML data. Reading the XML file Before we begin, we need to read the XML file. Python has many XML processing libraries,

Importing XML data into the database using PHP Introduction: During development, we often need to import external data into the database for further processing and analysis. As a commonly used data exchange format, XML is often used to store and transmit structured data. This article will introduce how to use PHP to import XML data into a database. Step 1: Parse the XML file First, we need to parse the XML file and extract the required data. PHP provides several ways to parse XML, the most commonly used of which is using Simple

Python implements conversion between XML and JSON Introduction: In the daily development process, we often need to convert data between different formats. XML and JSON are common data exchange formats. In Python, we can use various libraries to convert between XML and JSON. This article will introduce several commonly used methods, with code examples. 1. To convert XML to JSON in Python, we can use the xml.etree.ElementTree module

Handling Errors and Exceptions in XML Using Python XML is a commonly used data format used to store and represent structured data. When we use Python to process XML, sometimes we may encounter some errors and exceptions. In this article, I will introduce how to use Python to handle errors and exceptions in XML, and provide some sample code for reference. Use try-except statement to catch XML parsing errors When we use Python to parse XML, sometimes we may encounter some

Python parses special characters and escape sequences in XML XML (eXtensibleMarkupLanguage) is a commonly used data exchange format used to transfer and store data between different systems. When processing XML files, you often encounter situations that contain special characters and escape sequences, which may cause parsing errors or misinterpretation of the data. Therefore, when parsing XML files using Python, we need to understand how to handle these special characters and escape sequences. 1. Special characters and
