[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: xml schema best practices question.. one big xml or lots o
[got caught by the reply/reply-all plague again -- resend of original I just sent Leevi] You may want to take a look at cross over solutions such as eXist > http://exist.sourceforge.net/ This is a native XML database. In essence it uses XML as the foundation and the optimizes the storage and retrieval, allowing you to utilize up and coming XML DB-centric Query technologies such as XQuery to retrieve your data. There are others. In fact SQL Server, Oracle, etc... already allow storage of native XML and while I can't speak to Oracle (although I understand both their here and now as well as their coming XML support is nothing less than marvelous so its worth a gander for sure) but as far as the Beta releases of SQL Server and the personalized MSDE both support a subset of XQuery support that you can play with right away. See the blogs of Mike Champion and Michael Rys for more details, http://blogs.msdn.com/mikechampion/ and http://blogs.msdn.com/mrys/default.aspx respectively and if I have my link correctly you can access the download for MSDE (actually its now called SQL Server 2005 Express) via > http://www.microsoft.com/downloads/details.aspx?FamilyID=62b348bb-0458-4203-bb03-8be49e16e6cd&DisplayLang=en > so now i am armed with this new information and clarity.. i have to ask > what is xml good for??. XML was never designed as a database replacement but instead as a cross-platform data exchange format. When you are speaking in terms of individual transactions the benefits of working with XML become very apparent. No open and closing of database connections, a human readable format that can be quickly and easily understood if designed correctly. A simple way to express structure and function that can be passed from platform to platform (think SOAP) without concern for how each platform handles the processing.... etc... Theres obviously a lot more than this but in my opinion the combination of a high powered DB backend in which can be easily queried (XQuery), the returned XML transformed (XSLT) into the proper context/format for the application in questions, using a path based references (XPath) to quickly and easily navigate through the XML infoset/dataset/whateveristhecorrectandpropertermfortoday, XML Schema and RelaxNG for data validation based on a predefined set of rules, etc... Huge benefit to using XML with the power of a heavy load bearing DB is a lethal combination of flexibility, speed, power, and ease of creating kick butt software like never before... Cheers :) <M:D/> On 4/16/05, Leevi Graham <leevi@t...> wrote: > thanks for your response michael, > > it seems that after all my study and research into xml it is not the > right form of storgae for the application i wish to create. The info > would hopefully be accessed numerous times and as more people add their > business details the xml file will become bigger.. So i guess that a > relational database od the key afterall. > > so now i am armed with this new information and clarity.. i have to ask > what is xml good for??. If files sizes become a problem when accessing > the information repeatedly what is a real world situation where xml is > ideal? possibly storing seperate bits of data for occassional retrieval? > > i understand that xml is browser, computer, etc independent and that one > of its key bebefits in extenability but what good is that if you cant > share large amounts of data quickly and easily.. will native xml > databases solve this problem? > > as always one answer leads to a 1000 questions... > > cheers > Leevi Graham > > Michael Kay wrote: > > >There's no right answer to this: it depends how you want to use the data. > >Remember that an XML document is not a database. If the document is 1Gb big, > >then opening it (parsing it) every time you want to find out a single phone > >number is going to be very expensive. On the other hand, if it's 1Mb and the > >number of transactions is 1/hr rather than 1000/sec, then it may well be > >viable. > > > >Generally I would implement hierarchic ("contains") relationships like the > >one you describe by using the XML hierarchy, unless this makes the document > >impossibly big. > > > >If you decide to store the menus separately, either because two pubs can > >have the same menu, or for physical design reasons, there are many ways you > >can represent the relationships. If each menu is in a separate file then > >it's probably most flexible to use a URI. However, where objects have > >natural identifiers like part numbers or personnel numbers, then I prefer > >just to use that identifier, and leave the query logic to work out how to > >find the XML document for a given personnel number or part number. There are > >some people though who insist that the only respectable way to identify > >objects is by means of URIs. > > > >Michael Kay > >http://www.saxonica.com/ > > > > > > > > > > > >>-----Original Message----- > >>From: Leevi Graham [mailto:leevi@t...] > >>Sent: 16 April 2005 03:41 > >>To: xml-dev@l... > >>Subject: xml schema best practices question.. one > >>big xml or lots of little components? > >> > >>hi guys this is my first post to this dev-list... hopefully > >>it wont be > >>the last... > >> > >>i have a aquestion that has been bugging me for quite some time.. > >> > >>i am attempting to create a business directory with xml as > >>data storage. > >> > >>i wish to create business elements that contain the obvious > >>information.. address, contact location etc... > >> > >>however the business type may change from retail to professional to > >>hosplitality....mainly hospitality like pubs and restaraunts.. > >> > >>so finally here is my question: > >> > >>*lets say i have a business element that is a restaraunt and that > >>restauraunt obviously has a menu.. should i include the menu > >>as a child > >>element of the business or should i create a seperate xml file called > >>menus. Also if I do create a menus.xml file that contains the menus > >>seperatley how will i be able to tell which menu belongs to which > >>restaraunt..* > >> > >>things to consider my businesses.xml file may eventually contain many > >>businesses with many menus.... > >> > >>hopefully someone can help > >>cheers > >> > >>----------------------------------------------------------------- > >>The xml-dev list is sponsored by XML.org <http://www.xml.org>, an > >>initiative of OASIS <http://www.oasis-open.org> > >> > >>The list archives are at http://lists.xml.org/archives/xml-dev/ > >> > >>To subscribe or unsubscribe from this list use the subscription > >>manager: <http://www.oasis-open.org/mlmanage/index.php> > >> > >> > >> > >> > > > > > > > >----------------------------------------------------------------- > >The xml-dev list is sponsored by XML.org <http://www.xml.org>, an > >initiative of OASIS <http://www.oasis-open.org> > > > >The list archives are at http://lists.xml.org/archives/xml-dev/ > > > >To subscribe or unsubscribe from this list use the subscription > >manager: <http://www.oasis-open.org/mlmanage/index.php> > > > > > > > > ----------------------------------------------------------------- > The xml-dev list is sponsored by XML.org <http://www.xml.org>, an > initiative of OASIS <http://www.oasis-open.org> > > The list archives are at http://lists.xml.org/archives/xml-dev/ > > To subscribe or unsubscribe from this list use the subscription > manager: <http://www.oasis-open.org/mlmanage/index.php> > > -- <M:D/> :: M. David Peterson :: XML & XML Transformations, C#, .NET, and Functional Languages Specialist
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|