* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download XML and Mobile Agent Technology Enabling the Virtual Enterprise
Survey
Document related concepts
Semantic Web wikipedia , lookup
Mobile business intelligence wikipedia , lookup
Information privacy law 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
Operational transformation wikipedia , lookup
Versant Object Database wikipedia , lookup
Relational 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