<?xml version="1.0" encoding="UTF-8" ?>
<!-- $Id: align.dtd 499 2007-06-13 19:41:27Z euzenat $
 !
 ! Copyright (C) 2003-2004 INRIA Rhone-Alpes.
 !
 ! This program is free software; you can redistribute it and/or
 ! modify it under the terms of the GNU Lesser General Public License
 ! as published by the Free Software Foundation; either version 2.1
 ! of the License, or (at your option) any later version.
 ! 
 ! This program is distributed in the hope that it will be useful,
 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 ! GNU Lesser General Public License for more details.
 ! 
 ! You should have received a copy of the GNU Lesser General Public License
 ! along with this program; if not, write to the Free Software
 ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 -->

<!ENTITY % uri "CDATA">

<!ELEMENT rdf:RDF ANY>
<!ATTLIST rdf:RDF
            xmlns:rdf %uri; #FIXED "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
            xmlns %uri; #FIXED "http://knowledgeweb.semanticweb.org/heterogeneity/alignment"
>


<!ELEMENT Alignment ((xml?,type?,onto1,onto2,uri1?,uri2?,ANY)*,map*)>
<!ATTLIST Alignment>

<!ELEMENT xml (#PCDATA)><!-- yes/no -->
<!-- (11|1?|1+|1*|?1|??|?+|?*|+1|+?|++|+*|*1|*?|*+|**) -->
<!ELEMENT type (#PCDATA)>
<!ELEMENT level (#PCDATA)>
<!-- uriX are only here for compatibility purposes -->
<!ELEMENT uri1 (#PCDATA)><!-- uri -->
<!ATTLIST uri1 rdf:resource %uri; #IMPLIED>
<!ELEMENT uri2 (#PCDATA)><!-- uri -->
<!ATTLIST uri2 rdf:resource %uri; #IMPLIED>
<!ELEMENT onto1 (ANY)><!-- uri|Ontology -->
<!ATTLIST onto1 rdf:resource %uri; #IMPLIED>
<!ELEMENT onto2 (ANY)><!-- uri|Ontology -->
<!ATTLIST onto2 rdf:resource %uri; #IMPLIED>

<!ELEMENT Ontology (formalism)>
<!ATTLIST Ontology rdf:about %uri; #IMPLIED>
<!ELEMENT location (#PCDATA)>
<!ELEMENT formalism (Formalism)>
<!ELEMENT Formalism (EMPTY)>
<!ATTLIST Formalism uri %uri; #IMPLIED
	  name CDATA #REQUIRED>

<!-- For compatibility reason it is authorized to put several Cells
     in a map element. However, the result is not RDF anymore -->
<!ELEMENT map (Cell*)>

<!ELEMENT Cell (entity1|entity2|measure|relation)*>
<!ATTLIST Cell id %uri; #IMPLIED>

<!-- either object or URI -->
<!ELEMENT entity1 ANY>
<!ATTLIST entity1 rdf:resource %uri; #IMPLIED>

<!-- either object or URI -->
<!ELEMENT entity2 ANY>
<!ATTLIST entity2 rdf:resource %uri; #IMPLIED>

<!-- I should put the true value here -->
<!ATTLIST measure rdf:datatype %uri; #REQUIRED>
<!ELEMENT relation ANY>
<!ATTLIST relation rdf:resource %uri; #REQUIRED>

