IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  XML  >  

Virtual XML Garden

An implementation of XPath and XQuery for processing (and combining) many kinds of structured and formatted data as if it were all XML. (This is an ETTK technology.)


Date Posted: November 3, 2005
This is an ettk technology.
Overview Requirements DownloadFAQsForum Reviews

1. Where is the documentation?
2. What should I do if there is a bug?
3. How much of XPath is supported?
4. How much of XQuery is supported?
5. What extensions are supported?
6. What are those libraries in the lib subdirectory?
7. What is DFDL?
8. Why do you suggest using XML instead of relational/IMS/COPYBOOKS/...?
9. Where can I find information about related standards?


1. Where is the documentation?

The HTML file index.html in the Virtual-XML-Garden directory serves as the root of the documentation.
Back to top Back to top

1. Where is the documentation?

The HTML file index.html serves as the root of the documentation.

Back to top Back to top

2. How much of XPath is supported?

XPath 1.0 is fully supported with the exception of the following functions:
  • id($arg as xs:string*) as element()*
  • id($arg as xs:string*, $node as node()) as element()*
  • lang($testlang as xs:string) as xs:boolean
  • lang($testlang as xs:string?, $node as node()) as xs:boolean
To be more precise, XPath 2.0 running in the XPath 1.0 compatibility mode is fully supported (with the exceptions above). However, only the functions defined in the XPath 1.0 specification are implemented.

XPath 2.0 is partially supported. Specifically, the following features are not yet implemented:

  • intersect and except
  • castable
  • Functions not in XPath 1.0
  • Data types not in XPath 1.0.
Notice that the support for XPath 2.0 is in the early stages and not yet very stable.

Back to top Back to top

2. What should I do if there is a bug?

Please submit feedback through the discussion forum for Virtual XML Garden.
Back to top Back to top

3. How much of XPath is supported?

XPath 1.0 is fully supported. (To be more precise, XPath 2.0 running in the XPath 1.0 compatibility mode is fully supported.)

XPath 2.0 is close to completely supported, following the public June 2006 draft specification from the W3C. Specifically, the following features are not yet implemented:

  • The built-in types NOTATION, ENTITY, ENTITIES, and xs:language.
  • Collations.
  • Some standard functions: fn:round-half-to-even, fn:codepoint-equal, fn:normalize-unicode, fn:encode-for-uri, fn:iri-to-uri, fn:escape-html-uri, fn:in-scope-prefixes, fn:distinct-values, fn:deep-equal, fn:idref, fn:doc-available, fn:collection, and fn:implicit-timezone.
  • Division of durations by durations.
Back to top Back to top

3. How much of XQuery is supported?

Only limited support for XQuery 1.0 is provided. Specifically, the following features are supported:
  • "where" constraints
  • Computed and direct element constructor
  • Computed attribute constructor
  • Computed text constructor
  • Global and internal variable declaration
  • User-defined function (including recursive functions)
  • Namespace declaration.
Since our implementation of XQuery 1.0 is based on the implementation of XPath 2.0, it is currently quite unstable. However, it should run simple queries, particularly those in the samples subdirectory.

Back to top Back to top

4. How much of XQuery is supported?

XQuery 1.0 is partially supported, following the public June 2006 draft specification from the W3C. Our implementation includes the following optional features:
  • Full axis feature.
  • Module feature.
  • Serialization feature except it does not accept any serialization parameters.

In addition to the missing XPath 2.0 features listed above, the following specifics are not yet implemented:

  • Construction of processing-instructions.
  • Types in let-expression bindings and variable declarations.
  • order by clauses of for expressions.
  • Order, copy-namespace, and default namespace declarations.
  • Option declarations.

The XQuery implemenation is an experimental research prototype, so be aware that further limitations and problems may exist.

Back to top Back to top

4. What extensions are supported?

Only the "Virtual XML" name space with some extension functions, as summarized in the Manual.html document.

Back to top Back to top

5. What are those libraries in the lib subdirectory?

The libraries in the lib subdirectory are external support libraries (see the notices.txt file for license details):
  • resolver.jar, xercesImpl.jar, and xml-apis.jar, from the Apache Xerces, are used to provide a robust parser as well as some of the core XML APIs such as DOM and SAX.
  • common.jar, ecore.jar, xsd.jar, and xsd.resources.jar, are the core components of the Eclipse XSD (XML Schema) support libraries.

Back to top Back to top

5. What extensions are supported?

Only the "Virtual XML" name space with some extension functions, as summarized in the Manual.html document.
Back to top Back to top

6. What are those libraries in the lib subdirectory?

The libraries in the lib subdirectory are external support libraries (see the notices.txt file for license details):
  • resolver.jar, xercesImpl.jar, and xml-apis.jar, from the Apache Xerces, are used to provide a robust parser as well as some of the core XML APIs such as DOM and SAX.
  • common.jar, ecore.jar, xsd.jar, and xsd.resources.jar, are the core components of the Eclipse XSD (XML Schema) support libraries.
Back to top Back to top

6. What is DFDL?

DFDL stands for the Data Format Description Language and is a proposed standard being developed by a similarly-named working group of the Global Grid Forum. DFDL-related parts of the release are in the samples/dfdl directory.

Back to top Back to top

7. What is DFDL?

DFDL stands for the Data Format Description Language and is a proposed standard being developed by a similarly-named working group of the Global Grid Forum. DFDL-related parts of the release are in the samples/dfdl directory.
Back to top Back to top

8. Why do you suggest using XML instead of relational/IMS/COPYBOOKS/...?

More and more structured data is converted into XML documents anyway, either for transmission and processing that follow various standards, such as the Web service standards, or for combination with semi-structured document data in XHTML and similar formats. It is useful to start to "think XML" even for other forms of data in the enterprise.
Back to top Back to top

9. Where can I find information about related standards?

Back to top Back to top
Download now Download now

Related technologies

For platform(s):
Java

For topics:
Data Analysis, DFDL (data format definition language), Emerging Technologies Toolkit (ETTK), Java technology, virtualization, XML, XPath, XQuery


Related resources

Virtual XML project

Kristoffer Rose's blog

 

    About IBM Privacy Contact