Commit ea53785e authored by ankraft's avatar ankraft

- Copied from schema2.0

- Moved <Doc> elements to the top of each element.
- Added <Doc> to <Domain>
- DeviceDef is now directly included in SubDevice
- Added structured DataType and renamed element name in using elements
- Added unitOfMeasure attribute to DataType
parent 4c6327a9
<?xml version="1.0" encoding="UTF-8" ?>
<!-- - HGI Device Abstraction Layer - - - - - - - - - - - - - - - - - - - - -->
<!-- -->
<!-- Extends the standard build with targets for: -->
<!-- - generate XML schema the from Relax NG (xml) description -->
<!-- - validate DAL documents against the XML Schema -->
<!-- - generate HTML documentation from DAL documents -->
<project name="importing" basedir="." default="schemas">
<import file="etc/common.xml"/>
<!-- Read the namespace declarations from a file (to get linebreaks) - - - -->
<loadfile property="schema.xmlns" srcFile="${basedir}/etc/schema.xmlns"/>
<!-- The RNG file the XML and RNC schemas are generaed from - - - - - - - -->
<property name="schema.name" value="domain"/>
<property name="schema.rng" value="${path.src}/${schema.name}.rng"/>
<!-- HTML - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- -->
<!-- Generate HTML documentation from domain definitions in the test -->
<!-- directory. The module classes included via the extends tagged are -->
<!-- included in the documentation - so an xinclude capable XSL engine is -->
<!-- needed. -->
<!-- This needs Ant version 1.8+ and it must be augmented with an current -->
<!-- version of Xerces. Download the binray distribution and place the put -->
<!-- xml-apis.jar and xercesImpl.jar in the Ant lib directory. -->
<target name="html">
<mkdir dir="${path.genbase}" />
<xslt basedir="${basedir}/test" destdir="${basedir}/gen/html"
style="${basedir}/style/html.xsl">
<param name="destdir" expression="${basedir}/gen/html"/>
<sysproperty
key="org.apache.xerces.xni.parser.XMLParserConfiguration"
value="org.apache.xerces.parsers.XIncludeParserConfiguration"/>
</xslt>
</target>
<!-- Schemas - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- -->
<!-- The schema is specified using Relax NG (xml) and trang is used to -->
<!-- generate the XML schema. The schema is also generated in Relay NG -->
<!-- compact syntax, which is used by some validating editors (e.g. emacs) -->
<!-- The resulting schemas need some additional patching before thy are -->
<!-- usable -->
<target name="schemas">
<java jar="${basedir}/lib/trang.jar" fork="true">
<arg value="${schema.rng}"/>
<arg value="${basedir}/etc/${schema.name}.rnc"/>
</java>
<!-- So that the editor does not complain about include directives, the -->
<!-- resulting schema is included in another schema, which includes the -->
<!-- necessary element definitions. To be able to do this the -->
<!-- definition for Imports must be deleted from this generated schema. -->
<replace file="${basedir}/etc/${schema.name}.rnc"
token="Imports = element Imports { Domain* }?" value=""/>
<java jar="${basedir}/lib/trang.jar" fork="true">
<arg value="${schema.rng}"/>
<arg value="${path.src}/${schema.name}.xsd"/>
</java>
<!-- Can't validate against the generated schema unless we add the -->
<!-- target and default namespaces ... -->
<replace file='${path.src}/domain.xsd'
token='xmlns:xs="http://www.w3.org/2001/XMLSchema"'
value='${schema.xmlns}'/>
<!-- In addition the xml:base tag, which is added automatically when -->
<!-- including a document, must also be permitted by out schema. -->
<!-- The schema generated from RNG is almost correct schema ... but -->
<!-- the schemaLocation is wrong. -->
<replace file='${path.src}/domain.xsd'
token="xml.xsd" value="http://www.w3.org/2001/03/xml.xsd"/>
</target>
<!-- Validate - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- -->
<!-- Check the Device Description conforms to the Device Abstraction -->
<!-- Schema. Note that we need to activate support for XML includes -->
<target name="validate" depends="">
<schemavalidate warn="true">
<fileset dir="${basedir}/test" includes="*.xml"/>
<attribute name="http://apache.org/xml/features/xinclude" value="true"/>
<schema namespace="http://homegatewayinitiative.org/xml/dal/3.0"
file="${path.src}/domain.xsd" />
<schema namespace="http://www.w3.org/2001/XInclude"
file="${basedir}/etc/XInclude.xsd" />
<schema namespace="http://www.w3.org/2001/XMLSchema"
file="${basedir}/etc/XMLSchema.xsd" />
</schemavalidate>
</target>
</project>
# Backlog
To Be Discussed
[Versions](#Versions)
[Namespace](#Namespace)
[Roles](#Roles)
[Optionals](#Optionals)
<a name="Versions"></a>
## Versions
### Rational
A device vendor is free to add new functionality to a device and to change or to remove existing functionality from a device by a firmware update or changes in the configuration. These changes may mean that the device functionality and a description in SDT become "out of sync" because currently an application developer has only little means to associate a specific firmware version or device configuration to a version of a SDT description.
Even then the developer needs to manage different versions of the same SDT device description because there might be devices of the same type but with different firmware versions/configurations on a network.
The version information must be available to applications at runtime.
### Proposal
To solve this problem SDT components that can be influenced by firmware updates or configuration changes must be distinguishable by some kind of version scheme. Since different versions in the structure, attributes and elements of the SDT description as well as data types are already indicated by the "version number" of the SDT (e.g."http://hgi.org/xml/dal/3.0") only the components that are instantiated for the devices etc need to indicate their current version.
The proposal is to add a *version* attribute to the following SDT components:
- RootDevice
- Device
- ModuleClass
*Event*, *Action* etc don't need an version number because a change in one of those components must be indicated by a different version in the ModuleClass.
The *version* attribute is just a string value without a defined format.
### Further Discussion
Does HGI define the version format? Or is this up to the vendors to provide their own?
At least the governing entity that managed all the different needs to define this format since it must be in agreement between the device vendors, driver provider, DAL provider and application developer.
Format suggestion: define the format of the version string as "major.minor.revision" with the following semantics for each number:
- **revision**: minimal change, internal bugfix, no change to data, formats or API.
- **minor**: Change to the API that could be incompatible to the previous version. Added or removed interfaces or modules, changes in data formats.
- **major**: Redesign of the overall structure and architecture.
The "numbers" could be just integer number, but may also contain letters, e.g. "1.0.1a".
---
<a name="Namespace"></a>
## Domain / Namespace
### Issue
The SDL now uses the namespace "homegatewayinitiative.org" as a namespace to identify the schema (also used for includes). The namespace is **not** a URL, but uniquely identifies the namespace and *should* be registered by HGI.
That said, most validating parsers expect **that the namesapce IS a valid URL** or that at least there is a server on the other end rejecting the request. A timeout / no connection / no answer / ... leads to an error.
Therefore, we cannot use the namespace "homegateway.org" because parsers don't get an answer from this address.
---
<a name="Roles"></a>
## Roles
### Proposal
The proposal is to add a *role* to *RootDevice* / *Device*. DECT ULE defines roles such as client and server for direct communication of appliances without a local hub. Depending on the assigned role a device might support different functions.
Example:
<RootDevice name id=”xyz” role=”something”>
...
</RootDevice>
---
<a name="Optionals"></a>
## Optionals
### Rational
Introduce optional *Actions* in *ModuleClasses* to reduce the number of possible combinations. Some technologies offers flexibility in defining requireed and optional *Actions*, *DataPoints* and *Events*´. The alternative is to define similar *ModuleClasses* that offers the variants of required and optional elements.
DECT ULE, for example, has optional actions.
### Proposal
Add an attribute to *Actions* to mark them as optional in a ModuleClass. Perhaps *DataPoints* and *Events* as well.
Example:
...
<Action name=”abc” optional=”true”>
...
</Action>
The default without the optional attribute would be ``optional="false"``, meaning required).
# Examples and Contributions
## HGI
### Multi Socket Electrical-Extension-Block
[mseeb.xml](../test/mseeb.xml)
![Multi Socket Electrical-Extension-Block Structure](images/examples/hgi_mseeb.png)
## DECT ULE
## Echonet
## EnOcean
\ No newline at end of file
# Frequently Asked Questions
## What is the HGI?
tbd
## What is the SDT?
tbd
# Links & References
- **HGI** : [http://www.homegatewayinitiative.org](http://www.homegatewayinitiative.org)
## XML
- **RELAX NG** : [http://relaxng.org](http://relaxng.org)
- **RELAX NG Tutorial** : [http://relaxng.org/tutorial-20011203.html](http://relaxng.org/tutorial-20011203.html)
## Tools
- **UMLet** : [http://www.umlet.com](http://www.umlet.com)
The free UML drawing tool used to draw the UML file.
- **Apache Ant** : [http://ant.apache.org](http://ant.apache.org)
Build tool
# Build System Libraries and Licenses
The following libraries are used in the build system for the SDT.
## trang.jar
[http://www.thaiopensource.com/relaxng/trang-manual.html](http://www.thaiopensource.com/relaxng/trang-manual.html)
Trang takes as input a schema written in any of the following formats:
- RELAX NG (XML syntax)
- RELAX NG (compact syntax)
- XML 1.0 DTD
and produces as output a schema written in any of the following formats:
- RELAX NG (XML syntax)
- RELAX NG (compact syntax)
- XML 1.0 DTD
- W3C XML Schema
Trang can also infer a schema from one or more example XML documents.
### License
Copyright (c) 2002, 2003, 2008 Thai Open Source Software Center Ltd
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of the Thai Open Source Software Center Ltd nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
## Ant-Contrib Tasks
[http://ant-contrib.sourceforge.net](http://ant-contrib.sourceforge.net)
The Ant-Contrib project is a collection of tasks (and at one point maybe types and other tools) for Apache Ant.
### License
This Software is distributed under the Apache Software License.
## antSetLogLevel.jar
GUI dialog for Ant tasks.
Source: Deutsche Telekom
# SDT Build System
This document describes the SDT build system and how to build the SDT and validate new contributions.
The files referenced in this document point to version **3.0** of the SDT.
## Directory Structure and Important Files
- [SDT/schema3.0/](../..) : Base directory
- [SDT/schema3.0/src/](../src/) : Source files of the SDT.
- [domain.rng](../src/domain.rng) : RELAX NG file with the SDT schema definition. This is the source file that is converted to the actual schema definition *domain.xsd* during the build. See also [http://en.wikipedia.org/wiki/RELAX_NG](http://en.wikipedia.org/wiki/RELAX_NG).
**Only edit this file when one wants to make changes to the SDT!**
- [domain.xsd](../src/domain.xsd) : The SDT schema defintion that is generated from *domain.rng*.
- [xml.xsd](../src/xml.xsd) : General schema definitions for the SDT
- [SDT/schema3.0/test/](../test/) : This directory contains all XML files with SDT definitions that should be validated whether they conform to the SDT schema. This could be example definitions or contributions.
- [SDT/schema3.0/build.xml](../build.xml) : This is the definition file for the ant build system.
- [SDT/schema3.0/etc/](../etc/), [SDT/schema3.0/style/](../style/) : internal directories for the build system. Please, don't make unnecessary changes to these files.
- [SDT/schema3.0/etc/](../etc), [SDT/schema3.0/style/](../style/) : internal directories for the build system. Please, don't make unnecessary changes to these files.
- [SDT/schema3.0/etc/dal.rnc](../etc/dal.rnc) : This file contains various configuration parameter to convert the file [domain.rng](../src/domain.rng) to schema file. **The important parameter to change when changing the namespace or the version number is**:
default namespace xsl = "http://homegatewayinitiative.org/xml/dal/3.0"
- [SDT/schema3.0/etc/schemas.xml](../etc/schemas.xml) : This file contains the header for the schema file. **This must be changed when changing the namespace or the version number.**
- [SDT/schema3.0/lib/](../lib/) : Tasks for the ant-based build system. See also [SDT Build System Components and Licenses](SDT%20Build%20System%20Components%20and%20Licenses.md).
## Installation
- Install Java on your computer
- Download and install Apache ant from [http://ant.apache.org](http://ant.apache.org)
- Clone the SDT repository from GitHub:
$ git clone https://github.com/Homegateway/RWD050.git
## How to Use the Build System
After cloning the repository go to the directoy *SDT/schema* and run commands depending on what you want to achieve.
### Build the Schema
Running *ant* without any parameter builds the schema definition from the rng-definition [SDT/schema3.0/src/domain.rng](../src/domain.rng) and writes it to [SDT/schema3.0/src/domain.xsd](../src/domain.xsd)
$ cd SDT/schema
$ ant
### Validate SDT Definitions
You can use the build system to validate new SDT definitions or changes made to existing ones by running the following command:
$ cd SDT/schema
$ ant validate
The output after a successful validation should look like this:
>[schemavalidate] 2 file(s) have been successfully validated.
>BUILD SUCCESSFUL
>Total time: 1 second
Otherwise you most likely receive a stacktrace or some other error messages. Search the output for the line *BUILD FAILED*. Above this line you will find some helpful hints for the filename and line number on which the error occured (here: file *mseeb.xml* on line 66) and a reason:
>[schemavalidate] /Users/someone/Sources/git/RWD050/SDT/schema/test/mseeb.xml:66:18: cvc-elt.1: Cannot find the declaration of element 'Domain'.
>BUILD FAILED
---
## Editing
As mentioned above, the actual schema definition is defined in the file [domain.rng](../src/domain.rng) and converted to the XML schema definition [domain.xsd](../src/domain.xsd) during the build process.
**All changes to the schema must therefore be made in [domain.rng](../src/domain.rng), NOT [domain.xsd](../src/domain.xsd) !**
You may need to make additional changes in the following files, e.g. when the name space or the version number need to be adjusted.
PLEASE ONLY EDIT THESE FILES IF NECESSARY.
- [SDT/schema3.0/build.xml](../build.xml)
e.g. in the *ant* target "validate"
- [SDT/schema3.0/etc/dal.rnc](../etc/dal.rnc)
e.g. the entry "default namespace xsl"
- [SDT/schema3.0/etc/schema.xmlns](../etc/schema.xmlns)
- [SDT/schema3.0/etc/schemas.xml](../etc/schemas.xml)
This diff is collapsed.
This diff is collapsed.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xi="http://www.w3.org/2001/XInclude"
targetNamespace="http://www.w3.org/2001/XInclude"
finalDefault="extension">
<xs:annotation>
<xs:documentation>
Not normative, but may be useful.
See the REC http://www.w3.org/TR/XInclude for definitive
information about this namespace.
</xs:documentation>
</xs:annotation>
<xs:element name="include" type="xi:includeType" />
<xs:complexType name="includeType" mixed="true">
<xs:choice minOccurs='0' maxOccurs='unbounded' >
<xs:element ref='xi:fallback' />
<xs:any namespace='##other' processContents='lax' />
<xs:any namespace='##local' processContents='lax' />
</xs:choice>
<xs:attribute name="href" use="optional" type="xs:anyURI"/>
<xs:attribute name="parse" use="optional" default="xml"
type="xi:parseType" />
<xs:attribute name="xpointer" use="optional" type="xs:string"/>
<xs:attribute name="encoding" use="optional" type="xs:string"/>
<xs:attribute name="accept" use="optional" type="xs:string"/>
<xs:attribute name="accept-language" use="optional" type="xs:string"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
<xs:simpleType name="parseType">
<xs:restriction base="xs:token">
<xs:enumeration value="xml"/>
<xs:enumeration value="text"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="fallback" type="xi:fallbackType" />
<xs:complexType name="fallbackType" mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="xi:include"/>
<xs:any namespace="##other" processContents="lax"/>
<xs:any namespace="##local" processContents="lax"/>
</xs:choice>
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:complexType>
</xs:schema>
<?xml version='1.0'?>
<!-- XML Schema schema for XML Schemas: Part 2: Datatypes -->
<!DOCTYPE schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd" [
<!ENTITY % s ''>
<!ENTITY % p ''>
]>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3.org/2001/XMLSchema-datatypes"
version="$Id: XMLSchema-datatypes.xsd,v 1.5 2001/03/16 20:53:32 ht Exp $">
<annotation>
<documentation>Note this schema is NOT a normative schema - -
It contains types derived from all the builtin simple type definitions
with the same local name but in a distinct namespace, for use
by applications which do no wish to import the full XMLSchema
schema. Since derivation is not symmetric, unexpected results may
follow from mixing references to these definitions with references
to the definitions in the XMLSchema namespace. For example,
although dt:positiveInteger is derived from xs:integer, the converse
does not hold.</documentation>
</annotation>
<simpleType name="string">
<restriction base="string"/>
</simpleType>
<simpleType name="boolean">
<restriction base="boolean"/>
</simpleType>
<simpleType name="float">
<restriction base="float"/>
</simpleType>
<simpleType name="double">
<restriction base="double"/>
</simpleType>
<simpleType name="decimal">
<restriction base="decimal"/>
</simpleType>
<simpleType name="dateTime">
<restriction base="dateTime"/>
</simpleType>
<simpleType name="duration">
<restriction base="duration"/>
</simpleType>
<simpleType name="hexBinary">
<restriction base="hexBinary"/>
</simpleType>
<simpleType name="base64Binary">
<restriction base="base64Binary"/>
</simpleType>
<simpleType name="anyURI">
<restriction base="anyURI"/>
</simpleType>
<simpleType name="ID">
<restriction base="ID"/>
</simpleType>
<simpleType name="IDREF">
<restriction base="IDREF"/>
</simpleType>
<simpleType name="ENTITY">
<restriction base="ENTITY"/>
</simpleType>
<simpleType name="NOTATION">
<restriction base="NOTATION"/>
</simpleType>
<simpleType name="normalizedString">
<restriction base="normalizedString"/>
</simpleType>
<simpleType name="token">
<restriction base="token"/>
</simpleType>
<simpleType name="language">
<restriction base="language"/>
</simpleType>
<simpleType name="IDREFS">
<restriction base="IDREFS"/>
</simpleType>
<simpleType name="ENTITIES">
<restriction base="ENTITIES"/>
</simpleType>
<simpleType name="NMTOKEN">
<restriction base="NMTOKEN"/>
</simpleType>
<simpleType name="NMTOKENS">
<restriction base="NMTOKENS"/>
</simpleType>
<simpleType name="Name">
<restriction base="Name"/>
</simpleType>
<simpleType name="QName">
<restriction base="QName"/>
</simpleType>
<simpleType name="NCName">
<restriction base="NCName"/>
</simpleType>
<simpleType name="integer">
<restriction base="integer"/>
</simpleType>
<simpleType name="nonNegativeInteger">
<restriction base="nonNegativeInteger"/>
</simpleType>
<simpleType name="positiveInteger">
<restriction base="positiveInteger"/>
</simpleType>
<simpleType name="nonPositiveInteger">
<restriction base="nonPositiveInteger"/>
</simpleType>
<simpleType name="negativeInteger">
<restriction base="negativeInteger"/>
</simpleType>
<simpleType name="byte">
<restriction base="byte"/>
</simpleType>
<simpleType name="int">
<restriction base="int"/>
</simpleType>
<simpleType name="long">
<restriction base="long"/>
</simpleType>
<simpleType name="short">
<restriction base="short"/>
</simpleType>
<simpleType name="unsignedByte">
<restriction base="unsignedByte"/>
</simpleType>
<simpleType name="unsignedInt">
<restriction base="unsignedInt"/>
</simpleType>
<simpleType name="unsignedLong">
<restriction base="unsignedLong"/>
</simpleType>
<simpleType name="unsignedShort">
<restriction base="unsignedShort"/>
</simpleType>
<simpleType name="date">
<restriction base="date"/>
</simpleType>
<simpleType name="time">
<restriction base="time"/>
</simpleType>
<simpleType name="gYearMonth">
<restriction base="gYearMonth"/>
</simpleType>
<simpleType name="gYear">
<restriction base="gYear"/>
</simpleType>
<simpleType name="gMonthDay">
<restriction base="gMonthDay"/>
</simpleType>
<simpleType name="gDay">
<restriction base="gDay"/>
</simpleType>
<simpleType name="gMonth">
<restriction base="gMonth"/>
</simpleType>
</schema>
This diff is collapsed.
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8" ?>
<project name="anttasks" default="build">
<!-- ant-contribs -->
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="${path.libs}/ant/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
<!-- Set the log level -->
<taskdef name="setloglevel"
classname="de.berkom.ehome.tools.ant.setloglevel.SetLogLevel"
classpath="${path.libs}/ant/antSetLogLevel.jar"/>
</project>
<?xml version="1.0" encoding="UTF-8" ?>
<project name="imported" default="build">
<!-- TODOs
* genjar integration
* if no manifest is available include a defalt one from etc?
-->
<property name="path.libs" location="${basedir}/lib" />
<!-- Load various tasks -->
<import file="anttasks.xml" />
<!-- Unset the _mainbuild property -->
<var name="_mainbuild" unset="true" />
<!-- Load the properties -->
<import file="properties.xml" />
<!-- Load all the actual tasks -->
<import file="tasks/all.xml" />
<import file="tasks/allforced.xml" />
<import file="tasks/build.xml" />
<import file="tasks/buildjar.xml" />
<import file="tasks/clean.xml" />
<import file="tasks/collect.xml" />
<import file="tasks/compile.xml" />
<import file="tasks/compilenative.xml" />
<import file="tasks/doc.xml" />
<import file="tasks/eclipse.xml" />
<import file="tasks/_addPrivateLibs.xml" />
<import file="tasks/_buildNative.xml" />
<import file="tasks/_checkDependentProjects.xml" />
<import file="tasks/_cleanDependentProjects.xml" />
<import file="tasks/_getBuildNumber.xml" />
<import file="tasks/_handleProjectProperties.xml" />
<import file="tasks/_includeExternalResourcesInJar.xml" />
<!-- <import file="tasks/_importManifest.xml" /> -->
<import file="tasks/_prepare.xml" />
<import file="tasks/_preparebuild.xml" />
<import file="tasks/_setClassPath.xml" />
</project>
namespace local = ""
default namespace xsl = "http://homegatewayinitiative.org/xml/dal/3.0"
namespace xi = "http://www.w3.org/2001/XInclude"
version = "1.0"
include "domain.rnc"
xinclude = element xi:include {
attribute href { xsd:anyURI },
attribute parse { text }
}
Imports = element Imports { xinclude* }?
# Default Properties for the Ant make system
#
#
# Default libraries.
# Update accordingly if another library becomes the system's default library
#
default.lib.cdc.foundation.1.1=cdc/foundation/1.1/classes.zip
default.lib.osgi.core.2.0=osgi/framework/2.0/osgi.jar
default.lib.osgi.cmpn.2.0=osgi/framework/2.0/osgi.jar
default.lib.osgi.core.3.0=osgi/framework/3.0/osgi.jar
default.lib.osgi.cmpn.3.0=osgi/framework/3.0/osgi.jar
default.lib.osgi.core.4.0=osgi/core/4.0/osgi.core.jar
default.lib.osgi.core.4.1=osgi/core/4.1/osgi.core.jar
default.lib.osgi.core.4.2=osgi/core/4.2/osgi.core.jar
default.lib.osgi.core=osgi/core/4.2/osgi.core.jar
default.lib.osgi.cmpn.4.0=osgi/cmpn/4.0/osgi.compendium.jar