n:1-Zuordnung

n:1-Zuordnungen - unterschiedliche Wiederholungsquellen belassen (a)

Anmerkung: Modellgruppen wiederholen sich in diesen Beispielen nicht.
Quelle:
Unternehmen
  Abteilung[]
  Manager[]
Ziel:
Unternehmen
  Leiter[]
Vor der Zuordnung:
<Corporation>
Nach der Zuordnung:
<Corporation>
  <ForEach Department>
    <ForEach Manager>
      <Qualify>
        <Condition occur(Department)=occur(Manager)>
          <Leader>
            <MapFrom Department, Manager>

'Leader' benötigt 'ForEach'. 'Department' und 'Manager' halten jeweils ein Vorkommen davon bereit. Die Reihenfolge der beiden Vorkommen von 'ForEach' ist beliebig.

n:1-Zuordnungen - unterschiedliche Wiederholungsquellen belassen (b)

Quelle:
 Familie
  Vater
    GradeF[]
  Mutter
    GradeM[]
  Untergeordnetes Element    GradeC[]
Ziel:
Person
  Dienstgrad[]
Vor der Zuordnung:
<Person>
Nach der Zuordnung:
<Person>
  <ForEach GradeF>
    <ForEach GradeM>
      <ForEach GradeC>
        <Qualify>
          <Condition occur(GradeF)=occur(GradeM)=occur(GradeC)>
            <Grade>
              <MapFrom GradeF, GradeM, GradeC>

Ähnlich den vorherigen Beispielen gibt es einen weiteren Gleichheitstest unter 'Condition'.

n:1-Zuordnungen - unterschiedliche Vorgänger-Wiederholungsquellen (a)

Quelle:
 Schule
  Junge[]
    MarkB
  Mädchen[]
    MarkG
Ziel:
 Fortbildung  Student[]
    Leistung
Vor der Zuordnung:
<Education>
Nach der Zuordnung:
 <Education>
  <ForEach Boy>
    <ForEach Girl>
      <Qualify>
        <Condition occur(Boy)=occur(Girl)>
          <Student>
            <Performance>
              <MapFrom MarkB, MarkG>

Ordnen Sie jeder Wiederholungsebene (Student) im Ziel eine Ebene der Quellenwiederholung (Boy and Girl) in jeder ausgewählten Quelle zu. Verschachteln Sie 'ForEach'-Elemente jeder ausgewählten Quelle.

Bedingungen 'ForEach' und 'Qualify' sind bereits vorhanden

Quelle:
 Schule
  Junge[]
    MarkB
    AgeB
  Mädchen[]
    MarkG
    AgeG
Ziel:
 Fortbildung  Student[]
    Leistung
    Alter
Vor der Zuordnung:
 <Education>
  <ForEach Boy>
    <ForEach Girl>
      <Qualify>
        <Condition occur(Boy)=occur(Girl)>
          <Student>
            <Performance>
              <MapFrom MarkB, MarkG>
            <Age>
              <MapFrom>
Nach der Zuordnung:
 <Education>
  <ForEach Boy>
    <ForEach Girl>
      <Qualify>
        <Condition occur(Boy)=occur(Girl)>
          <Student>
            <Performance>
              <MapFrom MarkB, MarkG>
            <Age>
              <MapFrom AgeB, AgeG>

'ForEach', 'Qualify' und 'Condition' müssen nicht eingefügt werden, da sie bereits vorhanden sind. Sie müssen die Verschachtelung von <ForEach X> mit <ForEach Y> nicht einfügen, wenn die Verschachtelung <ForEach Y> mit <ForEach X> bereits vorhanden ist. Sie müssen 'Condition X=Y' nicht einfügen, wenn 'Condition Y=X' bereits vorhanden ist.

n:1-Zuordnungen über mehrere Ebenen wiederholen symmetrische Strukturen

Quelle:
 Schule
  Junge[]
    GradeB[]
      MarkB
  Mädchen[]
    GradeG[]
      MarkG
Ziel:
 Fortbildung  Student[]
    Jahr[]
      Leistung
Vor der Zuordnung:
<Education>
Nach der Zuordnung:
 <Education>
  <ForEach Boy>
    <ForEach Girl>
     <Qualify>
        <Condition occur(Boy)=occur(Girl)>
          <Student>
            <ForEach GradeB>
              <ForEach GradeG>
               <Qualify>
                  <Condition occur(GradeB)=occur(GradeG)>
                    <Year>
                    <Performance>
                      <MapFrom MarkB, MarkG>

Ordnen Sie jeder Wiederholungsebene im Ziel eine Ebene der Quellenwiederholung in jeder ausgewählten Quelle zu. 'GradeB' und 'GradeG' stimmen mit 'Year' überein; 'Boy and Girl' stimmen mit 'Student' überein.

n:1-Zuordnung - allgemeine Wiederholungsquelle

Quelle:
 Unternehmen
  Abteilung[]
    Manager
    Größe
Ziel:
 Unternehmen
  Gruppe[]
Vor der Zuordnung:
<Corporation>
Nach der Zuordnung:
 <Corporation>
  <ForEach Department>
    <Group>
      <MapFrom Manager, Size>

Gehen Sie von jeder Quelle (Manager and Size) aus weiter, und schließen Sie mit der allgemeinen Wiederholungsquelle (Department) ab.

Über mehrere Ebenen wiederholte symmetrische Strukturen

Quelle:
 Schule
  Dienstgrad[]
    Junge[]
      MarkB
    Mädchen[]
      MarkG
Ziel:
 Fortbildung  Jahr[]
    Student[]
      Leistung
Vor der Zuordnung:
<Education>
Nach der Zuordnung:
 <Education>
  <ForEach Grade>
    <Year>
      <ForEach Boy>
        <ForEach Girl>
           <Qualify>
              <Condition occur(Boy)=occur(Girl)>
                <Student>
                  <Performance>
                    <MapFrom MarkB, MarkG>

'Boy' und 'Girl' stimmen mit 'Student' überein; 'Grade' stimmt mit 'Year' überein.

Asymmetrische Wiederholung auf mehreren Ebenen (a)

Quelle:
 Unternehmen
  Unternehmensbereich[]
    Team[]
      Mitarbeiter
Universität
  Abteilung[]
    Professor
Ziel:
 Organisation
  Person[]
Vor der Zuordnung:
<organization>
Nach der Zuordnung:
 <Organization>
  <ForEach Division>
    <Qualify>
      <Condition occur(Division)=1>
        <ForEach Team>
          <ForEach Department>
             <Qualify>
                <Condition occur(Team)=occur(Department)>
                  <Person>
                    <MapFrom Employee, Professor>

Verwenden Sie für eine zusätzliche Quellenwiederholung eine 'ForEach-Qualify'-Bedingung.

Asymmetrische Wiederholung auf mehreren Ebenen (b)

Quelle:
Unternehmen
  Unternehmensbereich[]
    Team[]
      Mitarbeiter
Universität
  Abteilung[]
    Professor
Ziel:
Organisation
  Standort[]
    Person[]
Vor der Zuordnung:
<Organization>
Nach der Zuordnung:
 <Organization>
  <ForEach Division>
    <Location>
      <ForEach Team>
        <ForEach Department>
          <Qualify>
            <Condition occur(Team)=occur(Department)>
              <Person>
                <MapFrom Employee, Professor>

Verwenden Sie bei fehlender Quellenwiederholung kein 'ForEach'.

Asymmetrische Wiederholung auf mehreren Ebenen (c)

Quelle:
Unternehmen
  Unternehmensbereich[]
    Mitarbeiter
Universität
  Abteilung[]
    Professor
Ziel:
 Organisation
  Standort[]
    Person[]
Vor der Zuordnung:
<Organization>
Nach der Zuordnung:
 <Organization>
  <Location>
    <ForEach Division>
      <ForEach Department>
        <Qualify>
          <Condition occur(Division)=occur(Department)>
            <Person>
              <MapFrom Employee, Professor>

Verwenden Sie bei fehlender Quellenwiederholung kein 'ForEach'.

Problematische Mehrfachquellen innerhalb verschiedener Ebenen in verschachtelten Wiederholungen

Quelle:
 S  S1[]
    S2
    S3[]
      S4
Target:
 T  T1[]
    T2[]
Vor der Zuordnung:
<T>
Nach der Zuordnung:
 <T>
  <ForEach S1> (caused by matching S1-T1 for mapping S2-T2)
    <T1>
      <ForEach S1> (caused by matching S1-T2 for mapping S2-T2)
        <ForEach S3> (caused by matching S3-T2 for mapping S4-T2)
          <Qualify>
            <Condition occur(S1)=occur(S3)>
              <T2>
                <MapFrom S2,S4>

Zwei 'ForEach'-Ausdrücke mit demselben Ausdruck sollten nicht verschachtelt werden; 'occur(S1)' ist nicht eindeutig.

Problematische Mehrfachquellen innerhalb verschiedener Ebenen in verschachtelten Wiederholungen (a)

Quelle:
 S  S1[]
    S2[]
      S3[]
    S4      S5[]
Ziel:
 T  T1[]
Vor der Zuordnung:
<T>
Nach der Zuordnung:
 <T>
  <ForEach S1> (caused by unmatching S for mapping S3-T1)
    <Qualify>
      <Condition occur(S1)=1>
        <ForEach S2> (caused by unmatching S2 for mapping S3-T1)
          <Qualify>
            <Condition occur(S2)=1>
              <ForEach S1> (caused by unmatched S1 for mapping S5-T1)
                <Qualify>
                  <Condition occur(S1)=1>
                    <ForEach S3> (caused by matching S3-T1 for mapping S3-T1)
                      <ForEach S5> (caused by matching S5-T1 for mapping S5-T1)
                        <Qualify>
                          <Condition occur(S3)=occur(S5)>
                            <T1>
                              <MapFrom S3,S5>

Zwei 'ForEach'-Ausdrücke mit demselben Ausdruck sollten nicht verschachtelt werden; 'occur(S1)' ist nicht eindeutig.

Problematische Mehrfachquellen innerhalb verschiedener Ebenen in verschachtelten Wiederholungen (b)

Quelle:
 S  S1[]
   S2
   S3[]
      S4
Ziel:
 T  T1[]
Vor der Zuordnung:
<T>
Nach der Zuordnung:
 <T>
   <ForEach S1> (caused by unmatched S1 for mapping S4-T1)
      <Qualify>
         <Condition occur(S1)=1>
            <ForEach S1> (caused by matching S1-T1 for mapping S2-T1)
               <ForEach S3> (caused by matching S3-T1 for mapping S4-T1)
                  <Qualify>
                     <Condition occur(S1)=occur(S3)>
                        <T1>
                           <MapFrom S2,S4>
Zugehörige Tasks
Nachrichtenzuordnungen entwickeln
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2005 Letzte Aktualisierung: Nov 17, 2005
ar25235_3_