Download XML and Mobile Agent Technology Enabling the Virtual Enterprise

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Semantic Web wikipedia , lookup

Mobile business intelligence wikipedia , lookup

Information privacy law wikipedia , lookup

Data model wikipedia , lookup

Concurrency control wikipedia , lookup

Data vault modeling wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Open data in the United Kingdom wikipedia , lookup

Enterprise content management wikipedia , lookup

Business intelligence wikipedia , lookup

Database wikipedia , lookup

Operational transformation wikipedia , lookup

Versant Object Database wikipedia , lookup

Relational model wikipedia , lookup

XML wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
XML and Mobile Agent Technology Enabling Virtual
Enterprise: A Model for Distributed Document Management
Weishuai YANG ([email protected]),
Shanping LI ([email protected]),
Yulong ZHANG ([email protected]),
State Key Lab of CAD&CG,
Department of Computer Science and Engineering
Zhejiang University, Hangzhou 310027, P.R.China
Abstract
Emerging virtual enterprise trends have placed an
emphasis on collaborating, distributed computing and
information sharing across various platforms.
Internet, XML and mobile agent technology are
eminently suited to meet these challenges. This paper
proposes an application of XML and Mobile Agent to
Distributed Document Management.
1 Introduction
The idea of a virtual enterprise has gained some
prominence in recent years. This type of enterprise is
made up of a number of collaborating companies who
are in general physically distributed but work together
to meet some market demands. Documents were
created and stored throughout the enterprise with no
good method to promote sharing or reuse of the
information they contained.
In order to manage the distributed documents in a
virtual enterprise environment, this paper proposes a
heterogeneous data model to store and reconstruct
fine-granularity
XML
documents
for
the
interoperation among collaborators, and the mobile
agent technology is applied for distributed database
access.
2 Context
As the operations within a virtual enterprise are
distributed geographically, must the information
systems support them. A distributed document
management system for the World Wide Web could
enable us to meet this challenge.
Documents may need to be shared by one or more
technical teams at one storage site or across multiple
storage sites. A storage architecture that defines where
Ge CHEN ([email protected])
Department of Computer Science and Information
Systems, The University of Hong Kong
to store documents and ensures quick access to them
is required. In most cases (for instance, Computer
Aided Design applications), technical documents
consist solely of the graphic expression of the design.
The data necessary for describe these documents or
storing other information are generally easily
identified by structured documents (primarily in the
title block: References, Revisions, Title, Authors, etc.).
Only the descriptive markup language such as HTML,
SGML or XML, which describes the purpose of a
document rather than its physical appearance, is
neutral towards media. The XML standard is designed
to facilitate the data description and exchange
between diverse applications and platforms. In our
experiment, the documents of virtual enterprise are
exchanged by XML standard since XML is as one of
the dominant data formats for structured document
interchange on the Internet. With XML, the
advantages are obvious: Finding documents on the
Web or on a corporate intranet is much more efficient
because a search engine can go right to the relevant
tag rather than searching through entire pages of
information. XML's highly specific tags also make it
easier to index documents. XML-based document
management for virtual enterprise provides a great
way to manage the storing, reconstructing and
querying of documents across various platforms in the
inter-enterprise heterogeneous environment, which
facilitates the potential needs of Web publishing.
The saturation of network bandwidth, especially when
part of the network in question is the Internet, means
that remote database access as required by the virtual
enterprise model could mean ineffective IT support
for the business. Mobile Agent technology may be
able to overcome this set of problems through local
interaction. It is equally applicable to the problem of
geographically distributed information sources, since
mobile agent systems are inherently distributed.
3 A Model for Distributed Document
Management
3.1 Overview
In general, numerous different options to store and
query XML data exist. Object-oriented database
systems would allow to cluster XML elements and
sub-elements; this feature might be useful for certain
applications, but the current generation of
object-oriented database systems is not mature enough
to process complex queries on large databases. It is
going to take even longer before special-purpose
systems are mature.
Relational database systems are mature and scale very
well. And they have the additional advantage that
XML data and traditional (structured) data can
co-exist in a relational database making it possible to
build applications that involve both kinds of data with
little extra effort. Relational databases, however, have
been built to support traditional table-like data and the
requirements of processing XML data are vastly
different from the requirements to process such
traditional data. This way the XML documents can be
stored in the relational database with little efforts, and
schema extraction makes it also easier to formulate
queries.
Taking into account all these factors, we choose
relational database to store XML documents in this
experiment trying to meet the requirements discussed
above.
Figure 1: XML Storing Architecture
We have designed architecture for mobile agents to
while mobile agents move between networks. We will
allow them to operate XML files in a heterogeneous,
take each one of the mobile agent architecture, and
networked environment such as the Internet. It
describe its general activities and purpose within the
comprises both static and mobile agents: static agents
infrastructure in the next sections.
provide resources and facilities to mobile agents,
Figure 2: Four-Tiered System Architecture
Figure 2 shows the system architecture. The XML
document management system adopts a new
four-tiered architecture, which adds a Web server tier
between the traditional client side and application
server side. The clients are XML-enabled browsers.
The Web server is dedicated to serve the browsers’
request. The application server manages all of the
document resources and mobile agents created during
the document management process. All the documents
are stored on the DB Servers in fine-granularity.
3.2 Detailed Specifications
3.2.1 XML Data Storing Model
XML was defined as a textual language rather than a
data model. The Document Object Model (DOM)
defines how to translate an XML document into data
structures and thus can serve as a starting point for
any XML data model. In our experiment, we choose
to process XML data as a literal tree, where IDREF(S)
attributes are nothing more than text strings. The
starting point is one or a set of XML documents. We
propose to scan and parse these documents one at a
time and store all the results into relational tables. For
simplicity, we assume here that an XML document
can be represented as a DOM tree. But that’s only part
of the story. Perhaps the most remarkable about our
aim is the following List Data Model.
3.2.2 Storing and Reconstructing by XML
Standard
According to the structure of XML documents, We
define 7 classes to process the output of the parser,
which is: the XMLInfo class to contain the overall
information (e.g. the declaration), the DTDInfo, the
ElementInfo class, the AttributeInfo calss, the
CommentInfo class, the ContentInfo class and the
EntityInfo class. The functions of them are described
as the name. In this way, XML data is mapped into
tables of a relational schema and queries are translated
into SQL queries.
XML documents
DOM
Storing XML Documents in a Relational Database
In this section, we will store the XML documents into
a relational database complying with the
heterogeneous list data model. The discomposing
should keep the validity, the integrity and the
reconstructability of the original document. The
following method is used to store the document:
The node in the List Data Model has the following
structure:
Class ElementNodeList
{
…
int type;
// the node type: element
node or other node
int level;
// the level of the node
String name;
// the name of the node
String value;
// the value of the node
Attributelist alist;
ElementNodeList
next;
ElementNodeList
before;
…
}
The List Data Model algorithm of converting the
DOM to list data modal is as follows:
List_Data_Model traversal (org.w3c.dom.Node node,
List_Data_Model head, int level) {
If ( node != NULL){
level++;
construct node, insert it into target
List_Data_Model;
if
((node.type==element)
&&
(node.attribute!= null))
construct new node and insert it into
attribute list;
get the child of node;
for (int i = 0; i < sizeof(children of node); i++)
head=traverseal(node.child[i],head,level);
}
else return null;
}
List Data Model
7 Info classes
RDBMS
Figure 3: The Process of Storing XML documents
The XSL document name is recorded in the XMLInfo
class, for XSL is indispensable to XML document.
After the DOM tree is retrieved, the document’s
global information is extracted and maintained in the
XMLInfo class, and the DTD of valid XML document
is contained in the DTDInfo class. Finishing the
extraction, the DOM tree is converted into the list data
model, and the relevant position of the element is
recorded in the list node with the level information.
Then the list splits into 3 sublists separately, which
are the element list, the attribute list and the text
content list, and are stored in the RDBMS
independently. Something worth to be mentioned is
that the entity is treated the same as context until the
reconstruction.
Reconstructing XML Documents
The reconstruction of XML documents is the
assembly of the element list, the attribute list, the
document global information and the DTD
information. Having generated the XML document,
the XSL file is retrieved from the database and if
entity is included, the entity will be replaced by
elements after further calculation.
3.2.3 An Architecture for Mobile Agents
We use IBM’s Aglets Software Development Kit
(ASDK 1.0.3) as development platform for our mobile
agents. And JDBC is used, which makes our agents
connect to various databases smoothly. The
subsequent decomposition of the agent types involved
identifies key agent types of our experiment and
proposes an abstract model for database access using
agent technology.
IDOAgent – Intelligent DOcument Retrieval Agent
The IDOAgent is the agent that searches the database
to get the XML elements of one or more document
according to document name(s). The IDOAgent is
dispatch by the IDOMAgent described below. It
dispatches itself back to the application server with
the found data and disposes itself after its back to the
application server.
IDOMAgent – IDOAgent Management Agent
At most time the IDOMAgent residents at the
application server like a “static” agent. It responses
for controlling the whole process of a certain task. It
creates and dispatches the task-related agents to
destinations and communicates with these agents by
sending messages to monitor the progress of the task.
IDOMAgentDB – IDOAgent Management Agent on
DataBase Server
This kind of agent is residents on database servers, it
currently merely a static agent on database servers
does nothing except for monitor the incoming agents.
IDLEAgent – Instant Document List Exam Agent
The IDLEAgent runs during the system’s idle time. It
just roams on the net, either on database server or
application server, to find if there’re any new
documents and to update the dated document list on
the server it is roaming.
ADOSAgent – Adaptive DOcument Store Agent
The ADOSAgent is used to store a document into
database at the element-level. An ADOSAgent carries
either whole or part of the split element-level objects.
It is dispatched to database servers to store these
objects.
4 Conclusion
This solution is intend to solve the exchange and share
of distributed XML documents in virtual enterprise
based on heterogeneous environment and enables
transparent access with general Web browsers. We
studied a simple way to store and reconstruct XML
documents with a relational database. Due to its
simplicity, they will never be the best choices, but it is
extremely easy to implement, and it is possible to
obtain very good performance. This study was only a
first step towards finding the best way to solve the
exchange and share of distributed XML documents in
virtual enterprise. In addition, the mobile agent
technology was applied in the process of storing,
reconstructing and querying the XML document in
this experiment, which brings great flexibility and
power for distributed document management.
Acknowledgment
This research is supported by the National 863
program of China (No. 863-511-9842-014).
Reference
[1] D. Florescu and D. Kossmann. A performance
evaluation of alternative mapping schemes for
storing XML data in a relational database.
Technical Report, INRIA, France, 1999.
[2] J. McHugh, S. Abiteboul, R. Goldman, D. Quass,
and J. Widom. Lore: A database management
system for semistructured data. SIGMOD Record,
26(3):54-66, September 1997.
[3] TELUCO White Paper. Principles of Technical
Database Population using XML As applied to
DOCUMENTUM. http://www.teluco.com