Array ( [0] => xml/1437_Killian.xml
[1] => xml/1722_KIELTY.xml
[2] => xml/13755_Killory.xml
)
The next stage is to build an array of all of the items across the three shops, so that they
can be compared to the search criteria. The function multishop() takes the $shops[] array
as a parameter and runs each shop in turn through the parser, whose functions are all
defined in parse2.inc.
Although DTDs are not feasible in such a system, some level of uniformity is nonetheless
required. In this case, absolutely everything that is being sold or offered is to be
categorised either as an ITEM or a SERVICE .
This is the expected layout of one of the XML databases. As will be discussed later, this
layout also has a number of limitations.
colour= blue />
colour= red />
/>
price= 2995 />
The database starts and finishes withtags and, in this case, is populated
only with items. What is important to note here is that the attributes are completely
arbitrary. For example, some of the items have a colour defined for them and some do
not. The desc attribute is an abbreviation for description , but there is nothing to stop
the database owner from deciding to use the full spelling of the word instead. As long as
40