the XML document in the network it cannot know if somebody is listening and likewise
if somebody is receiving it. That may introduce lacks or errors in the EPCIS dynamic
chaining process. Let’s suppose that DS1 is out of order when the XML document is
sent, then it does not receive it. When the object arrives at the wholesaler, the corre-
sponding EPCIS (EPCIS B) publishes a new XML document using DS2. This message
is routed to EPCIS L but also to EPCIS A because DS1 is now up. As a result, EPCIS A
“thinks” that the next link is through EPCIS B, but it is absolutely not the case.
The second problem is due to the chaining itself. We suppose now that the dynamic
chaining process was successfully realized. The user who now wants to track informa-
tion about epc1 will query the first EPCIS of the chain (EPCIS A).This one returns the
information it kept and the EPCIS L address. The user queries now the second EPCIS
but this latter one is down. There’s no way to retrieve all other information, as the chain
is broken!
This solution use a real interesting concept but remains too sensitive to server fail-
ures. It is absolutely not robust enough. Furthermore, it allows mistakes not admissible
for such a network. It also raises some other questions relative to the XML routing tech-
nology. When will one server stop to listen to this XML document type if nothing is
received? Indeed, if the product is lost and will not be read again by any reader con-
nected within EPCglobal network, how to dynamically warn the listening DS servers
that they can terminate their subscription? We supposed that each EPCIS server sub-
scribes to the network when a product has left its firm and publishes a XML document
when a product arrives. How to detect that a product leaves or arrives in a firm? Using
business step? Will all firms use the same notation for these events? There are too many
questions that makes this solution finally too complicated.
5 Multi-DS and ONS: DSS Indexing DSS
Let’s recall that the ONS system is designed to reference the EPCIS where a particular
EPC product type appeared for the first time (in our example, from the factory). Our
third proposal consists to enhance the ONS system role: it does not only reference the
EPCIS, but also its connected DS servers.
Companies, that can assign EPCs, declare their EPCIS address in front of the object
type (EPC without serial number) in the ONS system configuration. As is, they also
declare there DS server address. Then, when any DS server receives an event, it can
extract the EPC out of it and query the ONS system to retrieve the corresponding DS
address. If that address is not its own address, it sends a new DS event to this address
that we call the referent DS server. In this new context, for a given EPC, the referent DS
indexes also the other DS servers that reference EPCIS dealing with that same code.
Consequently, in order to retrieve information about a given product, the application
layer can query the ONS system to find the referent DS address. Then, it queries the
corresponding server to retrieve indexed EPCISs and DSs. It does the same process
again whenever new DS addresses are found and retrieves all other EPCIS addresses.
The whole information is then reachable.
Each DS keeps its own access control policy. It means that each user must identify it-
self before querying anything to a DS. In our use case, a user who wants to track the
66