DAML Logo - Link to www.DAML.org

DAML Tools Wishlist

Home | About DAML | Announcements | Roadmap | Site Search

Several important tools are needed to support the DAML Lifecycle but are not yet being developed.

Please send updates/additions, or indications that you plan to build one of these tools, to tools-librarian@daml.org.

You can also view this list in XML, DAML, and OWL formats.
Tools that are still needed:
  1. DAML Ontology Mapping Tool
  2. DAML-ized cvsweb
  3. LDAP to DAML
  4. DAML Forms
Tools that are in progress:
  1. HTML to DAML (DAML Gateway)
  2. XML to DAML
  4. DAML diff
  5. High-Performance DAML Parser
  6. Java to DAML Translator
Tools that have been completed:
  1. DAML Validator
  3. DAML Mozilla Sidebar
  4. DAML Ontology Editor
  5. DAML Markup Tool
  6. DAML Instance Editor
  7. Hypertext DAML Ontologies
  8. DAML emacs mode
  9. Graph Filtering
  10. Java N3 Parser
  11. ERwin to DAML Translator

DAML Validator

Current tools will check DAML syntax, but not check for the existence of referenced ontologies, definition of Classes and properties, check property ranges/domains, identify references to undefined URI's, etc.

Ideally, the validator would have a WWW interface (hosted on www.daml.org) and also be downloadable for local bulk use.

The W3C HTML Validator and the ICS-FORTH Validating RDF Parser might provide useful starting points. It would be great if this could be packaged as a plug-in to XML Spy.

Dave Rager is working on this. See here.

ISI has volunteered to maintain a WebScripter list (static and dynamic) of desired Validator features. If you wish to contribute to this list,

  1. copy this DAML file to a publicly accessible Web server
  2. substitute your to-do items
  3. send the URL where you put it to frank@isi.edu


There may be DAML-specific abstractions that could be built above the existing RDF API. For example, the DAML API might implement a node-centric rather than a statement-centric view.

Java implementations of the DAML API should be put in the org.daml package.

GRCI has released a DAML API.

Jena now includes a DAML API.

DAML Mozilla Sidebar

The Mozilla browser supports "sidebars" which can monitor the content of the current window. We would like to develop a sidebar that would indicate when a page contains DAML content and allow the user to browse the available statements, referenced ontologies, etc.

An early prototype was developed by BBN and demonstrated at the DAML Kickoff Meeting.

Mike Schrader has implemented the DAML Sidebar.

DAML Ontology Editor

Several developers are working on tools to define ontologies in UML or PowerPoint, or by combining existing theories. No one is currently developing a GUI to create an ontology "from scratch" in DAML terms.

Protege can be used to create/modify RDF Schemas, and could probably be extended to handle DAML. Ontolingua now handles DAML-ONT.

OilEd may fulfill this role.

SRI has developed a DAML+OIL plugin for Protege. The Protege team is now developing a plugin for OWL.

DAML Markup Tool

We would like a GUI tool that allows a user to add DAML statements to existing HTML pages.

We may be able to leverage Jeff Heflin's Knowledge Annotator for SHOE and/or W3C's Annotea.

For DAML Homework Assignment 1, Stanford KSL developed a tool to take DAML instance information and distribute it among HTML pages.

OntoMat does this.

DAML Instance Editor

We would like to have a tool that can be used to create, modify, and associate instances of DAML classes based on a DAML Ontology.

Mike Dean adapted BBN's paramedit tool to generate RDF and RDF Schema for use in DAML Homework Assignment 1.

Siegfried Handschuh has developed OntoMat.

DAML Ontology Mapping Tool

We need a GUI to allow a user to define/refine the mapping between 2 ontologies.

It might be desirable to extend the Microsoft BizTalk Mapper to do this.

We may be able to leverage the merging system of Chimaera to help with the mapping problem.

HTML to DAML (DAML Gateway)

It would be desirable to have a general set of tools and techniques to easily construct gateways that provide a DAML interface to existing non-DAML WWW sites.

Stanford KSL and SRI have used W4 and WebL to provide OAA interfaces to WWW sites.

Could this be driven directly off DAML-S service descriptions?

Mike Dean has started to develop a set of DAML HTML Gateway tools.


It would be desirable to be able to import any XML data set as DAML content. XML DTDs primarily express "contains" relationships among element types and element attributes.

At least two approaches are possible: 1) provide general tools and techniques (e.g. XSLT) to generate DAML from XML, 2) specify rules which allow the direct mapping from an XML Document Object Model to a DAML model.

A tool that converted from XML Schema to DAML+OIL (March 2001 or later, with data type support) would be very useful.

Mark Neighbors of Booz-Allen is implementing an XML Schema to DAML translator.


XSLT is a very powerful langage for processing XML data. It would be great to be able to use XSLT for processing DAML. Rather than an XML document, it should be possible to run an XSLT stypesheet over a DAML document or a DAML knowledge base. This would have to account for some differences:

but these seem surmountable.

The Apache xalan implementation of XSLT (versions 1 and 2) provides interfaces to support a DOM model as input. This DOM model could be "lazily" created from a DAML document and/or knowledge base.

Mike Dean has done some work on a prototype implementation.

See also Stefan Kokkelink's Querying and transforming RDF.

Booz-Allen has released an initial implementation of their DAML/XSLT Adapter.

N3 rules can be used with cwm's --filter option to perform such graph transformations.

Hypertext DAML Ontologies

For viewing ontologies (e.g. in the DAML Ontology Library), it would be helpful to have a tool that could markup a DAML ontology (class and property definitions) to add anchors for IDs, provide hyperlinks to referenced resources, etc.

HyperDAML has now been implemented.

DAML diff

The structure and semantics of DAML offers leverage advantages in comparing evolving DAML content over time (e.g. last month's version of a DAML-ized project plan vs this month's). This could also potentially relate to the work that DRC and Jeff Heflin have done on versioning.

Jena 1.1 includes jena.rdfcompare, which tests for equivalence.

W3C is developing an RDF/DAML repository difference calculation module.

DAML emacs mode

The GNU emacs text editor supports modes customized to support editing of different programming languages and other structured data formats. A mode specifically designed for DAML (probably based on an existing SGML or HTML mode) would be valuable.

Mark Burstein has released DAML Emacs Mode.

Graph Filtering

It would be desirable to have general tools for filtering DAML+OIL content based on user preferences, e.g. for download into PalmDAML. A general purpose program might take a collection of DAML source URIs and user preferences and use tagging to associate a weight/value with each node and arc (based on node type, property type, proximity to other interesting objects, etc.) and then produce a file containing the highest priority statements (limited by size or other criteria).

Booz-Allen is working on this.

cwm includes several facilities for filtering.

DAML-ized cvsweb

Many open source and other projects use the Concurrent Versions System (CVS) for source code control. CVS collects historical statistics with each file and in a central repository history file. Several tools such as ViewCVS (used by SourceForge) and cvsweb (used by W3C's public CVS repository) provide a WWW interface to CVS repositories. Modifying one or more of these tools to produce DAML+OIL as well as HTML versions of the log data, and getting the changes incorporated into their official releases, could provide widespread use of DAML and greatly ease analysis of this data. It could also introduce DAML to the community of open source developers.

Java N3 Parser

Notation 3 (N3) is becoming widely used as a presentation syntax for DAML+OIL. The only tool that currently supports N3, cwm, is written in Python. A Java implementation of N3 would open it to a wider audience and allow direct use by tools such as the DAML Crawler.

Jena 2 includes an N3 parser.

High-Performance DAML Parser

Current RDF/DAML parsers consume large amounts of CPU and memory when processing significant data sets. Preliminary analysis suggests that this is in large part due to the layered implementation of these tools (e.g. XML, RDF statements, nodes). A DAML-specific Java parser designed and implemented from the outset to minimize processing time and memory consumption could remove this limitation and be of great benefit in promoting widespread use of DAML.

Short of a new implementation from scratch, use of the Document Table Model (DTM) in Xalan-Java 2 might be helpful.

Booz-Allen plans to work on this.

ARP provides a streaming parser with good performance.

ERwin to DAML Translator

ERwin from Computer Associates is an entity-relationship modeling tool used by many projects to design relational databases. It would be useful to be able to translate an ERwin model into a DAML+OIL ontology, similar to what we can do with UML (a streamlined procedure for converting ERwin to UML and UML to DAML+OIL is also a possibility).

ERwin 4.0 can store an XML representation of the model. Mike Dean has done some preliminary work in mapping this representation to DAML+OIL.

The Unicorn System can read ERwin and export DAML+OIL or OWL.

Java to DAML Translator

Since many projects already have "ontologies" encoded as Java classes, it would be useful to be able to generate DAML+OIL ontologies from Java class definitions and DAML+OIL content from Java objects.

Mike Dean is working on java2daml, which includes use of XML Schema datatypes and cardinality constraints.

The FRODO rdf2java tool provides bi-directional mappings for RDF.


Provide a tool to export information available via the Lightweight Directory Access Protocol (LDAP) in DAML format.

See the javax.naming.ldap package in JDK 1.3+.

DAML Forms

Investigate whether XForms can be effectively used to generate DAML content.

$Id: wishlist.xml,v 1.44 2003/11/17 01:44:20 mdean Exp $