<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE PLM [

<!-- Au moins 1 (1-N) '<Article ... />' et 0-N '<Poste_de_charge ... />' : -->
<!ELEMENT PLM (Article+,Lien_de_nomenclature+,Poste_de_charge*)>
<!ATTLIST PLM author CDATA #FIXED "Franck Barbier" version CDATA #FIXED "1.0">

<!-- 'EMPTY' => '<Article/>' et *NON* '<Article></Article>' : -->
<!ELEMENT Article EMPTY>
<!-- 'ID' signifie "primary key" : -->
<!-- '#REQUIRED' signifie "obligatoire" : -->
<!ATTLIST Article reference ID #REQUIRED>
<!-- Bien que 'designation' soit unique, 'ID' est peu clair car sous-entend "primary key" : -->
<!ATTLIST Article designation CDATA #REQUIRED>
<!ATTLIST Article type_fabrication_achat CDATA #REQUIRED>
<!ATTLIST Article unite_achat_stock CDATA #REQUIRED>
<!ATTLIST Article delai_en_semaine CDATA #REQUIRED>
<!-- '#IMPLIED' signifie "optionel" : -->
<!ATTLIST Article prix_standard CDATA #IMPLIED>
<!ATTLIST Article lot_de_reapprovisionnement CDATA #IMPLIED>
<!ATTLIST Article stock_mini CDATA #IMPLIED>
<!ATTLIST Article stock_maxi CDATA #IMPLIED>
<!ATTLIST Article pourcentage_de_perte CDATA #IMPLIED>
<!ATTLIST Article inventaire CDATA #IMPLIED>
<!-- Type énuméré ('#REQUIRED' est automatique) avec valeur par défaut : -->
<!ATTLIST Article PF_ou_MP_ou_Piece_ou_SE (PF|MP|Pi|SE) "PF">

<!-- Note : pas de possibilité de clef composée, i.e., 'constraint Lien_de_nomenclature_pk primary key(compose,composant)' -->
<!ELEMENT Lien_de_nomenclature EMPTY>
<!-- 'IDREF' signifie "foreign key" : -->
<!ATTLIST Lien_de_nomenclature compose IDREF #REQUIRED>
<!ATTLIST Lien_de_nomenclature composant IDREF #REQUIRED>
<!ATTLIST Lien_de_nomenclature quantite_de_composition CDATA #REQUIRED>

<!ELEMENT Poste_de_charge ANY>

]>

<PLM >
    <Article reference="CD100"
             designation="Camion déménagement bleu"
             type_fabrication_achat="fabr. par lot"
             unite_achat_stock="unite"
             delai_en_semaine="2"
             lot_de_reapprovisionnement="200"
             stock_maxi="600"
             PF_ou_MP_ou_Piece_ou_SE="PF"/>
    <Article reference="CH005"
             designation="Châssis monté"
             type_fabrication_achat="fabr. par lot"
             unite_achat_stock="unite"
             delai_en_semaine="1"
             lot_de_reapprovisionnement="300"
             stock_maxi="900"
             PF_ou_MP_ou_Piece_ou_SE="SE"/>
    <Lien_de_nomenclature compose="CD100"
                          composant="CH005"
                          quantite_de_composition="1"/>
</PLM>