A Method for Xquery Transform Implementation Based on Shadow Mechanism

Total Page:16

File Type:pdf, Size:1020Kb

A Method for Xquery Transform Implementation Based on Shadow Mechanism A Method for XQuery Transform Implementation Based on Shadow Mechanism Maria Rekouts, Maxim Grinev, Alexander Boldakov Institute for System Programming of Russian Academy of Sciences, Russia Abstract a node (and its descendants) and allows the user to access both modified and unmodified nodes. This modification is The XQuery Update Facility has been recently published specified as an update operation. Generally speaking, the by the World Wide Web Consortium as a working draft. user can obtain ”modified” data without modifying the data Among other features, the working draft presents a novel itself in a single query. It is worth pointing out, that there is powerful transform expression. A transform expression cre- an alternative for transform expressions in XQuery 1.0: the ates a new modified copy of an XML subtree, where the same query can by written by means of recursive function modifications are specified as update operations. In this pa- that constructs the modified copies of existing nodes. Com- per we investigate the use of transform expressions and pro- paring the two approaches, transform expression provides vide a method to support transform expressions efficiently: the following advantages: the method avoids copying of the whole modified XML sub- tree. Our method is based on the idea of shadow mechanism • A query with a transform expression is much easier to proposed in early work on recovery. write, debug and understand in contrast to a query with a recursive function (in Section 1.2 we give an example of such queries). 1 Introduction • With transform expressions it is possible to avoid bulk copying of data. That is, due to its higher declar- Over the past several years, both the research and the ative form, transform expressions give implementors standards communities have been showing a great interest the possibility to implement the expression in differ- in extending XQuery [1] with additional advanced facilities. ent ways, in particular in a way that does not carry out One of the most discussed and, obviously the one XQuery real copying of data, or at least minimizes the copying. lacked most, is the XQuery Update Facility that has been Otherwise, a query with recursive XML tree traver- recently presented by the World Wide Web Consortium as sal and explicit construction of new elements implies a working draft [3]. straightforward way of execution that leads to copying The XQuery Update Facility classifies all XQuery ex- of data. Optimization of such a query is very chal- pressions into the following two mutually exclusive cate- lenging, as it is quite a hard task to determine which of gories: an updating expression and a non-updating expres- the newly created elements are modified and which are sion. An updating expression is an expression that can mod- copied. ify the state of existing nodes, while a non-updating ex- pression preserves original contents. The XQuery Update Obviously, supporting transform expressions without Facility presents five new kinds of expressions, called: in- performing the actual copying can tremendously increase sert, delete, replace, rename, and transform. The first four the speed of its evaluation and save memory resources. This of these are updating expressions, and the last (transform) is what the method presented in our paper aims to achieve. is a non-updating expression. All of the four updating ex- pressions are quite customary to XQuery users as they all 1.1 Outline had appeared in one form or another both in research pro- posals [4, 5], and in software products that support XQuery In the next section we present a motivating example that [6, 7, 8]. While the transform expression provides novel demonstrates the effectiveness of using transform expres- powerful XQuery semantics, it has not been studied enough sions for content engineering tasks. In Section 2 we provide by researches and is not present in today’s software prod- our method to support transformswithout copying and illus- ucts. trate it by examples. In Section 3 related work is reviewed. A transform expression creates a new modified copy of Finally, Section 4 concludes the paper. 1.2 Motivating Example <file>/biography/james_cameron.html</file> <text> James Francis Cameron (born August 16, 1954) Our motivating example comes from the field of content is a Canadian-born American film director noted for his action/science fiction films, engineering [9]. The goal of content engineering is to au- which are often extremely successful financially... tomate content creation, management and publishing tasks </text> </biography> usually performed by hand. One of the basic ideas is single </director> sourcing, where there is a single version of content in the ... contentengineeringsystem, and the system providesa set of mechanisms that publish the content to various media. Iden- The task is to generate an XHTML version of review text tity based markup technique contributes to single sourcing replacing all director elements with the hyperlinks ac- support by solving the problems with links in the content: cordingto the directors’ data from directors.xml. In the gen- instead of explicit references, the content fragments are ”la- eral case we do not know the exact structure of a review beled” using names that reflect and clarify the meaning of element, that is, we do not know in advance where the the content [9]. director elements will appear within the review el- Consider a project where the goal is to create a collection ement. Thus it is necessary to scan over a hierarchy of ele- of movie reviews and to publish it to various media: web ments, applying the required transformation at each level of page and CD-ROM. When published on a web page, each the hierarchy. In XQuery 1.0 this can be accomplished by director name in the reviews must reference the director’s defining a recursive function. An example of such a func- biography in the internet movie database. When published tion performing the transformation looks as follows: to a CD-ROM, each director name must reference his bi- declare function local:traverse-replace($n as node()) ography stored locally on the CD-ROM. To accomplish this as node() { task, we use the following identity based markup technique: typeswitch($n) initially each director in the movie reviews is labeled with case $d as element(director) return director tag, that contains this director’s identificator as let $b := attribute; the information relative to each director is stored document("directors.xml")/directors /director[@id=$d/@id]/biography in a separate document ’directors.xml’ and contains the URI return to the biography in the internet movie database and a refer- <a href="{$b/url/text()}">{$d/text()}</a> case $e as element() ence to a local file with biography. return element Consider the example structure of the XML documents. { fn:local-name($e) } { for $c in $e/(* | @* | text()) In ’reviews.xml’ every review node contains review meta- return local:traverse-replace($c) } data and the text of the review in XHTML format with in- case $d as document-node() return document corporated director tags: { for $c in $d/* return local:traverse-replace($c) } default return $n <review> }; <title>Titanic</title> <genre>romance</genre> for $r in doc("reviews.xml")/reviews <text> /review[genre="romantic"] ... return <p><director id="James Cameron">James Cameron's</director> local:traverse-replace($r) 194-minute, $200 million film of the tragic voyage is in the tradition of the great Hollywood epics.</p> ... In the above query the recursive function ’traverse- </text> replace’ scans over the whole data and returns the appro- <review> priate result based on the type of the current node. This function reconstructs the whole review nodes copying all In ’directors.xml’ each director node is labeled with data. Note that director elements constitute a relatively id attribute and contains biography element with differ- small part of the review elements. It means that the re- ent forms of biography references for various media. The cursive function constructs the result preserving most of the url element contains the following subelements: the URI data in its original form and transforming only small pieces to the director’s biography intended for publishing on the of it. This leads to an extra overhead incurred by unnec- web page, the file element with a path to the biogra- essary copying of data. Optimization of such a query is phy data to publish on the CD-ROM and the text element not trivial and often practically impossible, as it is quite a with brief biography description intended to publish on the hard task to determine which of the newly created elements printed media. are modified and which are copied. Another disadvantage ... of transformation queries written via recursive functions is <director id="James Cameron"> <biography> their cumbersome syntax. The XQuery code looses its com- <url>http://en.wikipedia.org/wiki/James_Cameron</url> pactness and becomes hard to understand. 2 The transform expressions introducedin the XQuery Up- bounds of the XML tree that represents the copied date Facility allows one to write the required transforma- value. More precisely, the method must ensure that tion in much more compact way. Moreover, it gives more parent, ancestor, following and preceding axes do not chances to implement it in an efficient way. The same trans- lead out of the root of this XML tree. formation query written with transform expression looks as • While navigating over the copied value, the replace- follows. ment nodes must be visible instead of the target nodes. for $r in doc("reviews.xml")//review[genre="romance"] return Our method is based on the idea of data shadow mecha- transform copy $rom:=$r nism, which was first proposedin the early papers on recov- do ery and data versioning where there is an ability to return for $d in $rom//director do replace {$d} to original versions [10].
Recommended publications
  • Rdfa in XHTML: Syntax and Processing Rdfa in XHTML: Syntax and Processing
    RDFa in XHTML: Syntax and Processing RDFa in XHTML: Syntax and Processing RDFa in XHTML: Syntax and Processing A collection of attributes and processing rules for extending XHTML to support RDF W3C Recommendation 14 October 2008 This version: http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014 Latest version: http://www.w3.org/TR/rdfa-syntax Previous version: http://www.w3.org/TR/2008/PR-rdfa-syntax-20080904 Diff from previous version: rdfa-syntax-diff.html Editors: Ben Adida, Creative Commons [email protected] Mark Birbeck, webBackplane [email protected] Shane McCarron, Applied Testing and Technology, Inc. [email protected] Steven Pemberton, CWI Please refer to the errata for this document, which may include some normative corrections. This document is also available in these non-normative formats: PostScript version, PDF version, ZIP archive, and Gzip’d TAR archive. The English version of this specification is the only normative version. Non-normative translations may also be available. Copyright © 2007-2008 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply. Abstract The current Web is primarily made up of an enormous number of documents that have been created using HTML. These documents contain significant amounts of structured data, which is largely unavailable to tools and applications. When publishers can express this data more completely, and when tools can read it, a new world of user functionality becomes available, letting users transfer structured data between applications and web sites, and allowing browsing applications to improve the user experience: an event on a web page can be directly imported - 1 - How to Read this Document RDFa in XHTML: Syntax and Processing into a user’s desktop calendar; a license on a document can be detected so that users can be informed of their rights automatically; a photo’s creator, camera setting information, resolution, location and topic can be published as easily as the original photo itself, enabling structured search and sharing.
    [Show full text]
  • Bibliography of Erik Wilde
    dretbiblio dretbiblio Erik Wilde's Bibliography References [1] AFIPS Fall Joint Computer Conference, San Francisco, California, December 1968. [2] Seventeenth IEEE Conference on Computer Communication Networks, Washington, D.C., 1978. [3] ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, Los Angeles, Cal- ifornia, March 1982. ACM Press. [4] First Conference on Computer-Supported Cooperative Work, 1986. [5] 1987 ACM Conference on Hypertext, Chapel Hill, North Carolina, November 1987. ACM Press. [6] 18th IEEE International Symposium on Fault-Tolerant Computing, Tokyo, Japan, 1988. IEEE Computer Society Press. [7] Conference on Computer-Supported Cooperative Work, Portland, Oregon, 1988. ACM Press. [8] Conference on Office Information Systems, Palo Alto, California, March 1988. [9] 1989 ACM Conference on Hypertext, Pittsburgh, Pennsylvania, November 1989. ACM Press. [10] UNIX | The Legend Evolves. Summer 1990 UKUUG Conference, Buntingford, UK, 1990. UKUUG. [11] Fourth ACM Symposium on User Interface Software and Technology, Hilton Head, South Carolina, November 1991. [12] GLOBECOM'91 Conference, Phoenix, Arizona, 1991. IEEE Computer Society Press. [13] IEEE INFOCOM '91 Conference on Computer Communications, Bal Harbour, Florida, 1991. IEEE Computer Society Press. [14] IEEE International Conference on Communications, Denver, Colorado, June 1991. [15] International Workshop on CSCW, Berlin, Germany, April 1991. [16] Third ACM Conference on Hypertext, San Antonio, Texas, December 1991. ACM Press. [17] 11th Symposium on Reliable Distributed Systems, Houston, Texas, 1992. IEEE Computer Society Press. [18] 3rd Joint European Networking Conference, Innsbruck, Austria, May 1992. [19] Fourth ACM Conference on Hypertext, Milano, Italy, November 1992. ACM Press. [20] GLOBECOM'92 Conference, Orlando, Florida, December 1992. IEEE Computer Society Press. http://github.com/dret/biblio (August 29, 2018) 1 dretbiblio [21] IEEE INFOCOM '92 Conference on Computer Communications, Florence, Italy, 1992.
    [Show full text]
  • RDF/XML: RDF Data on the Web
    Developing Ontologies • have an idea of the required concepts and relationships (ER, UML, ...), • generate a (draft) n3 or RDF/XML instance, • write a separate file for the metadata, • load it into Jena with activating a reasoner. • If the reasoner complains about an inconsistent ontology, check the metadata file alone. If this is consistent, and it complains only when also data is loaded: – it may be due to populating a class whose definition is inconsistent and that thus must be empty. – often it is due to wrong datatypes. Recall that datatype specification is not interpreted as a constraint (that is violated for a given value), but as additional knowledge. 220 Chapter 6 RDF/XML: RDF Data on the Web • An XML representation of RDF data for providing RDF data on the Web could be done straightforwardly as a “holds” relation mapped according to SQLX (see ⇒ next slide). • would be highly redundant and very different from an XML representation of the same data • search for a more similar way: leads to “striped XML/RDF” – data feels like XML: can be queried by XPath/Query and transformed by XSLT – can be parsed into an RDF graph. • usually: provide RDF/XML data to an agreed RDFS/OWL ontology. 221 A STRAIGHTFORWARD XML REPRESENTATION OF RDF DATA Note: this is not RDF/XML, but just some possible representation. • RDF data are triples, • their components are either URIs or literals (of XML Schema datatypes), • straightforward XML markup in SQLX style, • since N3 has a term structure, it is easy to find an XML markup. <my-n3:rdf-graph xmlns:my-n3="http://simple-silly-rdf-xml.de#"> <my-n3:triple> <my-n3:subject type="uri">foo://bar/persons/john</my-n3:subject> <my-n3:predicate type="uri">foo://bar/meta#name</my-n3:predicate> <my-n3:object type="http://www.w3.org/2001/XMLSchema#string">John</my-n3:object> </my-n3 triple> <my-n3:triple> ..
    [Show full text]
  • XML for Java Developers G22.3033-002 Course Roadmap
    XML for Java Developers G22.3033-002 Session 1 - Main Theme Markup Language Technologies (Part I) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences 1 Course Roadmap Consider the Spectrum of Applications Architectures Distributed vs. Decentralized Apps + Thick vs. Thin Clients J2EE for eCommerce vs. J2EE/Web Services, JXTA, etc. Learn Specific XML/Java “Patterns” Used for Data/Content Presentation, Data Exchange, and Application Configuration Cover XML/Java Technologies According to their Use in the Various Phases of the Application Development Lifecycle (i.e., Discovery, Design, Development, Deployment, Administration) e.g., Modeling, Configuration Management, Processing, Rendering, Querying, Secure Messaging, etc. Develop XML Applications as Assemblies of Reusable XML- Based Services (Applications of XML + Java Applications) 2 1 Agenda XML Generics Course Logistics, Structure and Objectives History of Meta-Markup Languages XML Applications: Markup Languages XML Information Modeling Applications XML-Based Architectures XML and Java XML Development Tools Summary Class Project Readings Assignment #1a 3 Part I Introduction 4 2 XML Generics XML means eXtensible Markup Language XML expresses the structure of information (i.e., document content) separately from its presentation XSL style sheets are used to convert documents to a presentation format that can be processed by a target presentation device (e.g., HTML in the case of legacy browsers) Need a
    [Show full text]
  • Odata-Csdl-Xml-V4.01-Os.Pdf
    OData Common Schema Definition Language (CSDL) XML Representation Version 4.01 OASIS Standard 11 May 2020 This stage: https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/os/odata-csdl-xml-v4.01-os.docx (Authoritative) https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/os/odata-csdl-xml-v4.01-os.html https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/os/odata-csdl-xml-v4.01-os.pdf Previous stage: https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/cos01/odata-csdl-xml-v4.01-cos01.docx (Authoritative) https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/cos01/odata-csdl-xml-v4.01-cos01.html https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/cos01/odata-csdl-xml-v4.01-cos01.pdf Latest stage: https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/odata-csdl-xml-v4.01.docx (Authoritative) https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/odata-csdl-xml-v4.01.html https://docs.oasis-open.org/odata/odata-csdl-xml/v4.01/odata-csdl-xml-v4.01.pdf Technical Committee: OASIS Open Data Protocol (OData) TC Chairs: Ralf Handl ([email protected]), SAP SE Michael Pizzo ([email protected]), Microsoft Editors: Michael Pizzo ([email protected]), Microsoft Ralf Handl ([email protected]), SAP SE Martin Zurmuehl ([email protected]), SAP SE Additional artifacts: This prose specification is one component of a Work Product that also includes: • XML schemas: OData EDMX XML Schema and OData EDM XML Schema.
    [Show full text]
  • XML: Looking at the Forest Instead of the Trees Guy Lapalme Professor Département D©Informatique Et De Recherche Opérationnelle Université De Montréal
    XML: Looking at the Forest Instead of the Trees Guy Lapalme Professor Département d©informatique et de recherche opérationnelle Université de Montréal C.P. 6128, Succ. Centre-Ville Montréal, Québec Canada H3C 3J7 [email protected] http://www.iro.umontreal.ca/~lapalme/ForestInsteadOfTheTrees/ Publication date April 14, 2019 XML to PDF by RenderX XEP XSL-FO Formatter, visit us at http://www.renderx.com/ XML: Looking at the Forest Instead of the Trees Guy Lapalme Professor Département d©informatique et de recherche opérationnelle Université de Montréal C.P. 6128, Succ. Centre-Ville Montréal, Québec Canada H3C 3J7 [email protected] http://www.iro.umontreal.ca/~lapalme/ForestInsteadOfTheTrees/ Publication date April 14, 2019 Abstract This tutorial gives a high-level overview of the main principles underlying some XML technologies: DTD, XML Schema, RELAX NG, Schematron, XPath, XSL stylesheets, Formatting Objects, DOM, SAX and StAX models of processing. They are presented from the point of view of the computer scientist, without the hype too often associated with them. We do not give a detailed description but we focus on the relations between the main ideas of XML and other computer language technologies. A single compact pretty-print example is used throughout the text to illustrate the processing of an XML structure with XML technologies or with Java programs. We also show how to create an XML document by programming in Java, in Ruby, in Python, in PHP, in E4X (Ecmascript for XML) and in Swift. The source code of the example XML ®les and the programs are available either at the companion web site of this document or by clicking on the ®le name within brackets at the start of the caption of each example.
    [Show full text]
  • Integración De XML En Páginas Web Dinámicas DOM
    Integración de XML en páginas Web dinámicas DOM Jose Emilio Labra Gayo Departamento de Informática Universidad de Oviedo Motivación: Computación Dinámica Páginas Web estáticas vs. Dinámicas Computación Dinámica = Contenido se genera en el momento en que se hace la petición 2 Posibilidades: Cliente vs Servidor Internet Cliente Servidor GET http://servidor.com/hola.html http:/1.0 200 OK <html> <body> Enlace a <a href =“otro.html”>Otro</a> </body> </html> Computación Dinámica en Servidor Al solicitar ciertas páginas, el servidor genera el contenido Ejemplos: CGI's, Servlets, JSP, ASP, PHP, etc. El proceso es trasparente para el cliente El cliente recibe únicamente código HTML No tiene porqué haber problemas de usabilidad Desventajas La interactividad requiere comunicación entre cliente/servidor Mayor carga de la red y del servidor Desperdicio de las capacidades del cliente Computación dinámica en Cliente Se pueden incluir objetos computacionales que son interpretados por el cliente Varias posibilidades: Applets, Javascript, ... Se ejecutan en el entorno que ofrece el navegador DOM ofrece una API que permite acceder/manipular los elementos del documento También se puede acceder a otros elementos (eventos, barra de estado, etc.) Por seguridad no se permite escribir/leer ficheros JavaScript Un poco de historia Netscape 2 (Dic. 1995) incorporó Javascript (diseñado por Brendan Eich) Permite modificar contenido de páginas Web interactivamente JavaScript no tiene nada que ver con Java Se llamaba LiveScript (cambio de nombre por marketing) Microsoft
    [Show full text]
  • OWL 2 Web Ontology Language XML Serialization W3C Proposed Recommendation 22 September 2009
    OWL 2 Web Ontology Language XML Serialization W3C Proposed Recommendation 22 September 2009 OWL 2 Web Ontology Language XML Serialization W3C Proposed Recommendation 22 September 2009 This version: http://www.w3.org/TR/2009/PR-owl2-xml-serialization-20090922/ Latest version: http://www.w3.org/TR/owl2-xml-serialization/ Previous version: http://www.w3.org/TR/2009/CR-owl2-xml-serialization-20090611/ (color-coded diff) Editors: Boris Motik, Oxford University Computing Laboratory Bijan Parsia, University of Manchester Peter F. Patel-Schneider, Bell Labs Research, Alcatel-Lucent Contributors: (in alphabetical order) Sean Bechhofer, University of Manchester Bernardo Cuenca Grau, Oxford University Computing Laboratory Achille Fokoue, IBM Corporation Rinke Hoekstra, University of Amsterdam This document is also available in these non-normative formats: PDF version. Copyright © 2009 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply. Abstract The OWL 2 Web Ontology Language, informally OWL 2, is an ontology language for the Semantic Web with formally defined meaning. OWL 2 ontologies provide classes, properties, individuals, and data values and are stored as Semantic Web documents. OWL 2 ontologies can be used along with information written in RDF, and OWL 2 ontologies themselves are primarily exchanged as RDF documents. The OWL 2 Document Overview describes the overall state of OWL 2, and should be read before other OWL 2 documents. Page 1 of 35 http://www.w3.org/TR/2009/PR-owl2-xml-serialization-20090922/ OWL 2 Web Ontology Language XML Serialization W3C Proposed Recommendation 22 September 2009 This document specifies an XML serialization for OWL 2 that mirrors its structural specification.
    [Show full text]
  • Xml Xpath, Xslt
    More XML XPATH, XSLT CS 431 – February 27, 2006 Carl Lagoze – Cornell University XPath • Language for addressing parts of an XML document –XSLT –Xpointer • Tree model similar to DOM • W3C Recommendation (1999) – http://www.w3.org/TR/xpath Remember to think in terms of DOM trees DOCUMENT type=Element <?xml version="1.0" name="book" encoding="UTF-8"?> <book> <title lang='"en"'>"XML Basics"</title> type=Element name="title" </book> type=Text type=Attribute data="XML name="lang" Basics" data="en" Xpath Concepts •Context Node – current node in XML document that is basis of path evaluation – Default to root (remember that root is “Document”) • Location Steps – selection from context node – Axis – sub-tree(s) selection from context node – Node Test – select specific elements or node type(s) – Predicates – predicate for filtering after axis and node tests Context, Axis, Node Test, Predicate Document Root Location Path Specification • /step/step/…. – absolute from document root • step/step …. – relative from context • //step/step – anywhere in document tree • where step is: axis::node-test[predicate] axis::node-test[predicate] • child:: all children of context • descendant:: all children, grandchildren, … • parent:: parent of context • ancestor:: all nodes on path to root from context axis::node-test[predicate] • Element name: e.g. “Book” – make sure to pay attention to namespaces!!!! •Wildcard: * • Type(): where type is “node”, “text”, etc. – Remember in DOM that everything is a node axis::node-test[predicate] • Boolean and comparative operators
    [Show full text]
  • Best Practices Managing XML Data
    ® IBM® DB2® for Linux®, UNIX®, and Windows® Best Practices Managing XML Data Matthias Nicola IBM Silicon Valley Lab Susanne Englert IBM Silicon Valley Lab Last updated: January 2011 Managing XML Data Page 2 Executive summary ............................................................................................. 4 Why XML .............................................................................................................. 5 Pros and cons of XML and relational data ................................................. 5 XML solutions to relational data model problems.................................... 6 Benefits of DB2 pureXML over alternative storage options .................... 8 Best practices for DB2 pureXML: Overview .................................................. 10 Sample scenario: derivative trades in FpML format............................... 11 Sample data and tables................................................................................ 11 Choosing the right storage options for XML data......................................... 16 Selecting table space type and page size for XML data.......................... 16 Different table spaces and page size for XML and relational data ....... 16 Inlining and compression of XML data .................................................... 17 Guidelines for adding XML data to a DB2 database .................................... 20 Inserting XML documents with high performance ................................ 20 Splitting large XML documents into smaller pieces ..............................
    [Show full text]
  • XML Projects in Japan and Fujitsu's Approach to Xlink/Xpointer
    UDC 621.395.74:651.55:681.32 XML Projects in Japan and Fujitsu’s Approach to XLink/XPointer VToshimitsu Suzuki VMasatomo Goto (Manuscript received June 2, 2000) The Extensible Markup Language (XML)1) is a markup language developed in response to a recommendation by the World Wide Web Consortium (W3C).2) It is a meta lan- guage used to make an information structure. XML’s original specification is the Stan- dard Generalized Markup Language (SGML).3) Now, XML is used not only as a format language but also as a framework in various areas beyond the SGML field. This paper describes the XML technology trends, the current state of XML technology, and some case studies in Japan and at Fujitsu. This paper also describes HyBrick,4) which is an XML/SGML browser that was demonstrated at SGML’97, and the XLink5)/XPointer6) technology. 1. Introduction verified through these experiments. The specification of XML has been in use by Up to now, XML has been related to infor- the W3C since 1996. XML version 1.0 was released mation technology (IT), and because of the IT as a W3C recommendation in February 1998. revolution it is becoming a secure part of the foun- XML is a meta language for marking up informa- dation of new IT systems. Last year, a lineup of tion. XML’s original specification is the Standard XML parsers and other XML basic software ap- Generalized Markup Language (SGML), which is peared, establishing a development environment used to mark up documents for archiving and re- for application software.
    [Show full text]
  • XHTML Rdfa Modules XHTML Rdfa Modules
    XHTML RDFa Modules XHTML RDFa Modules XHTML RDFa Modules Modules to support RDF annotation of elements W3C Editor’s Draft 11 August 2007 This version: http://www.w3.org/MarkUp/2007/ED-xhtml-rdfa-20070811 Latest version: http://www.w3.org/TR/xhtml-rdfa Previous Editor’s Draft: http://www.w3.org/MarkUp/2007/ED-xhtml-rdfa-20070705 Diff from previous Editor’s Draft: xhtml-rdfa-diff.html Editors: Mark Birbeck, x-port.net Ltd. Shane McCarron, Applied Testing and Technology, Inc. This document is also available in these non-normative formats: PostScript version, PDF version, ZIP archive, and Gzip’d TAR archive. The English version of this specification is the only normative version. Non-normative translations may also be available. Copyright © 2007 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply. Abstract The XHTML RDFa (RDF using attributes) modules define a collection of elements and attributes that enhance a document authors ability to annotate the relationships of content within and among documents. These modules can be integrated into any markup language based upon XHTML Modularization [XHTMLMOD [p.45] ]. Status of This Document This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/. - 1 - Table of Contents XHTML RDFa Modules This document is an internal editors draft for development purposes. However, its content is based upon mature materials from [XHTML2 [p.45] ] and is therefore considered nearly complete.
    [Show full text]