XPointerLib - XML Linking Implementation

This is sent in behalf of Doug Daniels (rainking@rice.edu). Please note that XPointerLib is different than the XPointer/FIXptr implementation in the baseline Mozilla product.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

	    XML Linking Implementation Questionnaire
	    ========================================

General
=======
What is the name of your organization?
  Connexions Project, Rice University

How should we contact you on linking matters?
  rhaptos@cnx.rice.edu

What is the name of the linking technology?
  XPointerLib

Please describe its functionality and development status briefly.
  XPointerLib is a mozdev.org project providing XPointer support for Mozilla / 
  Netscape 7 / Phoenix browsers. It is an XPCOM service written in
  JavaScript that creates and resolves a subset of the XPointer
  language.

Is it publicly available?  If so, what is its current location?

  Yes, it is available from http://xpointerlib.mozdev.org/

XPointer
========
How does the technology use XPointer?

  It both creates and evaluates XPointers.  On the creation side,
given either a Mozilla Selection object or a DOM Range and the
Document referenced by the XPointer, it will return the XPointer
representation. For evaluation, given an XPointer and the Document, it
will resolve the XPointer to a DOM Range.

Does (or will) the technology claim XPointer conformance?

  Yes, as far as I understand full conformance, it is fully XPointer
conformant. 

Please provide details about the parts of XPointer implemented.
- Bare names -- implemented
- Child sequences -- implemented
- id() function -- implemented
- Full XPath -- partial -- many functions and axis specifiers still unimplemented.  intend to
implement more as time warrants.
- range-to -- implemented
- string-range -- partial -- implemented for "" (non-pattern matching) second
argument only. intend to implement with full pattern-matching capability soon. 
- Namespace support -- not yet implemented, but should pass over gracefully
- In programming API -- yes, the API
for my component is available from http://xpointerlib.mozdev.org/examples.html
- In user interface
   - Selecting/showing multiple non-contiguous ranges:  
      not yet implemented.  my evaluation
functions only return a single DOM Range, *not* an entire array of
ranges.  Again, I intend to address this in the future.

- Any other comments/details?

What difficulties did you discover in using the XPointer
specification?

  The XPointer specification itself does not convey how important it
is to read and understand the XPath specification first.  This would
be an invaluable piece of knowledge, especially when first approaching
XPointer.  

What difficulties did you discover in implementing XPointer?

  There were a few contortions necessary to properly lex the ambiguous grammar,
but nothing too terrible.

Received on Wednesday, 20 November 2002 17:32:39 UTC