<?xml version="1.0" encoding="UTF-8"?>
<!--DTD generated by XMLSpy v2005 rel. 3 U (http://www.altova.com)-->
<!ELEMENT piece (plf)?>
<!ATTLIST piece
	prob NMTOKEN #REQUIRED
	low NMTOKEN #IMPLIED
	high NMTOKEN #IMPLIED
	nominal CDATA #IMPLIED
>
<!ELEMENT pud (piece)+>
<!--Node Property Definition-->
<!ELEMENT pdef (value)?>
<!ATTLIST pdef
	id ID #REQUIRED
	type (int | str | pl | plf | money) #REQUIRED
	label CDATA #IMPLIED
	category CDATA #IMPLIED
	serviceCategory CDATA #IMPLIED
	hidden NMTOKEN #IMPLIED
	editable NMTOKEN #IMPLIED
>
<!--Edge Property Definition-->
<!ELEMENT epdef EMPTY>
<!ATTLIST epdef
	id ID #REQUIRED
	type (int | str | pl | plf | money) #REQUIRED
	hidden NMTOKEN #IMPLIED
>
<!ELEMENT number (#PCDATA)>
<!--Deprecated-->
<!ELEMENT image (#PCDATA)>
<!--Floor (UI-only)-->
<!ELEMENT floor (number, image)>
<!--Associates properties of rooms and requests-->
<!ELEMENT assoc EMPTY>
<!ATTLIST assoc
	availability (roomOnly | vendorOnly | roomAndVendor) #IMPLIED
	roomP IDREF #REQUIRED
	requestWeight IDREF #REQUIRED
	requestPref IDREF #REQUIRED
	assocType (sharable | general | start | duration) "general"
>
<!ELEMENT v (#PCDATA)>
<!ELEMENT v1 (#PCDATA | pud)*>
<!ELEMENT v2 (#PCDATA | pud)*>
<!--Piecewise linear function-->
<!ELEMENT plf (v1, v2)+>
<!--Propery-->
<!ELEMENT p (#PCDATA | pud | plf)*>
<!ATTLIST p
	type IDREF #REQUIRED
	inherited NMTOKEN #IMPLIED
	default NMTOKEN #IMPLIED
	priority NMTOKEN #IMPLIED
>
<!ELEMENT ep (#PCDATA | pud | plf)*>
<!ATTLIST ep
	type IDREF #REQUIRED
	inherited NMTOKEN #IMPLIED
	default NMTOKEN #IMPLIED
	priority NMTOKEN #IMPLIED
>
<!--Edge to another node-->
<!ELEMENT edge (ep)*>
<!ATTLIST edge
	id ID #IMPLIED
	type (isA | requestOf | assignTo | fixTo | dist | nonoverlap | before | after | uses | assignment | distance | assignmentTerm) "isA"
	to IDREF #REQUIRED
	inherited NMTOKEN #IMPLIED
	default NMTOKEN #IMPLIED
	priority NMTOKEN #IMPLIED
>
<!ELEMENT slotlist EMPTY>
<!ATTLIST slotlist
	prob NMTOKEN #REQUIRED
	sCost NMTOKEN #REQUIRED
	fCost NMTOKEN #REQUIRED
	start NMTOKEN #REQUIRED
>

<!ELEMENT node (p | edge | slotlist)*>
<!ATTLIST node
	active NMTOKEN "true"
	id ID #REQUIRED
	shownInGUI CDATA #IMPLIED
>
<!ELEMENT scenario (pdef | epdef | node | floor | assoc)*>