<?xml version="1.0" encoding="UTF-8"?>
<!-- 
============================================================================ 
Name        : sysdef_dtd_1_4_0.xml 
Part of     : Helium 

Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
All rights reserved.
This component and the accompanying materials are made available
under the terms of the License "Eclipse Public License v1.0"
which accompanies this distribution, and is available
at the URL "http://www.eclipse.org/legal/epl-v10.html".

Initial Contributors:
Nokia Corporation - initial contribution.

Contributors:

Description:

============================================================================
-->
<!DOCTYPE SystemDefinition [<!ELEMENT SystemDefinition (systemModel?, build?)>
 <!ATTLIST SystemDefinition
  name CDATA #REQUIRED
  schema CDATA #REQUIRED>
 <!ELEMENT systemModel (layer+)>
 <!ELEMENT layer (logicalset* | module*)*>
 <!ATTLIST layer
  name CDATA #REQUIRED
  levels CDATA #IMPLIED
  span CDATA #IMPLIED>
 <!ELEMENT logicalset (logicalsubset* | module* | unit* | package* | prebuilt*)*>
 <!ATTLIST logicalset name CDATA #REQUIRED>
 <!ELEMENT logicalsubset (module* | unit* | package* | prebuilt*)*>
 <!ATTLIST logicalsubset name CDATA #REQUIRED>
 <!ELEMENT module (component* | unit* | package* | prebuilt*)*>
 <!ATTLIST module
  name CDATA #REQUIRED
  level CDATA #IMPLIED>
 <!ELEMENT component (unit* | package* | prebuilt*)*>
 <!ATTLIST component name CDATA #REQUIRED>
 <!ELEMENT unit EMPTY>
 <!ATTLIST unit
  unitID ID #REQUIRED
  name CDATA #REQUIRED
  mrp CDATA #REQUIRED
  filter CDATA #IMPLIED
  bldFile CDATA #REQUIRED
  priority CDATA #IMPLIED
  contract CDATA #IMPLIED>
 <!ELEMENT package EMPTY>
 <!ATTLIST package
  name CDATA #REQUIRED
  mrp CDATA #REQUIRED
  filter CDATA #IMPLIED
  contract CDATA #IMPLIED>
 <!ELEMENT prebuilt EMPTY>
 <!ATTLIST prebuilt
  name CDATA #REQUIRED
  version CDATA #REQUIRED
  late (Y|N) #IMPLIED
  filter CDATA #IMPLIED
  contract CDATA #IMPLIED>
 <!ELEMENT build (option* | target+ | targetList+ | unitList+ | configuration+)*>
 <!ELEMENT unitList (unitRef+)>
 <!ATTLIST unitList
  name ID #REQUIRED
  description CDATA #REQUIRED>
 <!ELEMENT unitRef EMPTY>
 <!ATTLIST unitRef unit IDREF #REQUIRED>
 <!ELEMENT targetList EMPTY>
 <!ATTLIST targetList
  name ID #REQUIRED
  description CDATA #REQUIRED
  target IDREFS #REQUIRED>
 <!ELEMENT target EMPTY>
 <!ATTLIST target
  name ID #REQUIRED
  abldTarget CDATA #REQUIRED
  description CDATA #REQUIRED>
 <!ELEMENT option EMPTY>
 <!ATTLIST option
  name ID #REQUIRED
  abldOption CDATA #REQUIRED
  description CDATA #REQUIRED
  enable (Y | N | y | n) #REQUIRED>
 <!ELEMENT configuration (unitListRef+ | layerRef+ | task+)*>
 <!ATTLIST configuration
  name ID #REQUIRED
  description CDATA #REQUIRED
  filter CDATA #REQUIRED>
 <!ELEMENT task ( unitListRef* , (buildLayer | specialInstructions))>
 <!ELEMENT unitListRef EMPTY>
 <!ATTLIST unitListRef unitList IDREF #REQUIRED>
 <!ELEMENT layerRef EMPTY>
 <!ATTLIST layerRef layerName CDATA #REQUIRED>
 <!ELEMENT buildLayer EMPTY>
 <!ATTLIST buildLayer
  command CDATA #REQUIRED
  targetList IDREFS #IMPLIED
  unitParallel (Y | N | y | n) #REQUIRED
  targetParallel (Y | N | y | n) #IMPLIED>
 <!ELEMENT specialInstructions EMPTY>
 <!ATTLIST specialInstructions
  name CDATA #REQUIRED
  cwd CDATA #REQUIRED
  command CDATA #REQUIRED>  
]>
<SystemDefinition name="sysdef_dtd_1_4_0_xml" schema="1.4.0">
</SystemDefinition>
