Altova StyleVision 2024 Enterprise Edition

Editierbare Variablen in der Authentic-Ansicht

Zur Startseite Zurück Nach oben Weiter

Variablen, die sich im Geltungsbereich befinden, können in der Authentic View-Ansicht vom Benutzer bearbeitet werden, der auf diese Weise festlegen kann, was in der Authentic View-Ansicht angezeigt wird. So hat der Benutzer z.B. die Möglichkeit, bei einer sehr großen XML-Datei, die die Personaldaten mehrerer Niederlassungen eines Unternehmens enthält, eine bestimmte Firmenniederlassung auszuwählen. Auf diese Art kann er in der Authentic View-Ansicht des XML-Dokuments nur die von ihm ausgewählte Niederlassung anzeigen lassen.

 

Funktionsweise

Die Definition editierbarer Variablen für die Authentic View-Ansicht erfolgt in drei Schritten (siehe Abbildung unten):

 

1.Die gewünschte Variable wird für die Vorlage, in der sie verwendet wird, definiert. Diese Vorlage schränkt den Geltungsbereich der Variablen ein. Die  Variable kann nur innerhalb der Vorlage verwendet werden, in der sie sich im Geltungsbereich befindet.

2.Es wird eine benutzerdefinierte Vorlage mit dem Namen der Variablen angelegt. Der dynamische Inhalt der benutzerdefinierten Vorlage wird den Wert der Variablen enthalten. Wenn der Platzhalter (Inhalt) oder ein Eingabefeld als Inhalt der benutzerdefinierten Vorlage in das Design eingefügt wird, dann kann der Benutzer der Authentic View-Ansicht jeden Inhalt als Wert der Variablen eingeben. Allerdings können die Optionen, die dem Benutzer in der Authentic View-Ansicht zur Verfügung stehen, durch Einfügen eines Formularsteuerelements wie z.B. einer Auswahlliste als Inhalt der benutzerdefinierten Vorlage eingeschränkt werden.

3.Die Variable kann in einem XPath-Ausdruck verwendet werden, der festlegt, was in der Authentic View-Ansicht angezeigt werden soll. So kann die Variable z.B. in einer Bedingung verwendet werden. Je nachdem, welchen Wert die einzelnen Verzweigungen einer Bedingung haben, kann etwas anderes für die Anzeige definiert werden. Eine andere Möglichkeit für die Verwendung einer Variablen ist ein Vorlagenauswahlausdruck oder ein Vorlagenfilter.

 

Anmerkung:        Beachten Sie bitte die folgenden Punkte:

 

Da Gruppierung und Sortierung in der Authentic View-Ansicht nicht unterstützt werden, können editierbare Variablen in der Authentic View-Ansicht nicht in einem SPS verwendet werden, das eine dieser Funktionen enthält.

Da die Funktion für editierbare Variablen nur für die Authentic View-Ansicht gilt, muss das Design für die Authentic View-Ansicht ein anderes sein, als das für die anderen Ausgabeformate. Dies lässt sich ganz leicht mit Hilfe der Funktion ausgabebasierte Bedingungen bewerkstelligen.

 

Beispieldatei

Anhand der Datei AuthenticVariables.sps im Ordner (Eigene) Dateien, C:\Documents and Settings\<username>\My Documents\Altova\StyleVision2024\StyleVisionExamples\Tutorial\Grouping\Scores\ sehen Sie, wie editierbare Variablen in der Authentic View-Ansicht verwendet werden können. Die XML-Datei enthält die Ergebnisse einzelner Partien in einem Turnier. Die teilnehmenden Teams sind in zwei  Gruppen aufgeteilt. Mit Hilfe der editierbaren Variablen kann der Benutzer die anzuzeigende Gruppe in der Authentic View-Ansicht auswählen und die Anzeige auf diese Gruppe einschränken.

 

In der Abbildung unten sehen Sie das gesamte SPS-Design. Es wird eine editierbare Variable erstellt. Die dafür erforderlichen Einzelschritte sind in der Abbildung beschriftet. Unterhalb der Abbildung finden Sie eine Beschreibung der einzelnen Schritte.

 

EditableVarsAuth

 

Die editierbare Variable wird folgendermaßen erstellt und definiert:

 

Für die \$XML Vorlage (die Root-Vorlage) wird eine editierbare Variable mit dem Namen SelectGroup mit dem Typ xs:string definiert. Diese Variable ist für die gesamte Vorlage im Geltungsbereich.

Für die \$XML Vorlage wird eine nicht editierbare Variable namens Groups mit dem Typ <auto> definiert. Sie dient dazu, die verschiedenen Werte aller results/group/@id Attribute dynamisch zu sammeln. Diese verschiedenen Werte sollen in der Dropdown-Liste der Auswahlliste angezeigt werden, aus der der Benutzer in der Authentic View-Ansicht die gewünschte anzuzeigende Gruppe auswählt.

Eine benutzerdefinierte Vorlage wird erstellt und erhält den Namen \$SelectGroup (den Namen der editierbaren Variablen). Die Position der benutzerdefinierten Vorlage spielt keine Rolle, solange sie sich im Geltungsbereich der editierbaren Variablen befindet.

In diese benutzerdefinierte Vorlage wird eine Auswahlliste eingefügt. In der Auswahlliste wird der XPath-Ausdruck \$Groups, 'All' verwendet, um die Eingabewerte der Dropdown-Liste auszuwählen. Dieser XPath-Ausdruck gibt die Reihe der Einträge zurück, die in der Variable \$Groups (die alle verfügbaren Gruppen dynamisch sammelt) enthalten sind, und fügt zu der von \$Groups zurückgegebenen Reihe ein Element All hinzu. Mit dem Auswahllisteneintrag All werden alle Gruppen angezeigt.

Die benutzerdefinierte Vorlage wird in eine ausgabebasierte Bedingungsvorlage eingeschlossen, wobei als Ausgabe die Authentic View-Ansicht definiert ist. Der Grund dafür ist, dass die editierbare Variable nur in der Authentic View-Ansicht verwendet werden kann.

Im nächsten Schritt wird der Wert der editierbaren Variablen verwendet, die der Benutzer in der Authentic View-Ansicht auswählt. Dies dient dazu,  die Anzeige zu filtern, um nur die Gruppe anzuzeigen, die der Benutzer der Authentic View-Ansicht auswählt. Dazu wird ein Filter für die results/group Vorlage definiert. Der XPath-Ausdruck dieses Filters lautet:

 

         if (\$SelectGroup != 'All') then @id=\$SelectGroup else @id

 

Mit diesem Filterausdruck wird für das Element group ein Prädikatschritt erstellt. Wenn die Variable \$SelectGroup einen Wert hat, der nicht All ist, so lautet der Prädikatschritt [@id=X], wobei X der Wert der Variablen \$SelectGroup (den der Benutzer in der Authentic View-Ansicht in der Auswahlliste ausgewählt hat) ist. Mit diesem Filter wird die Gruppe ausgewählt, die ein id Attribut mit dem Wert hat, den der Benutzer in der Authentic View-Ansicht ausgewählt hat. Wenn die Variable \$SelectGroup einen Wert All hat, so wählt der Prädikatausdruck Gruppen mit jedem beliebigen id Attributwert, also alle Gruppen, aus.

Die Vorlage group wird in eine ausgabebasierte Bedingung eingeschlossen, von der jeder Verzweigung eine andere Ausgabe auswählt. Nur in der Verzweigung Authentic View-Ansicht wird der Filter auf die group Vorlage angewendet.

 

Die Ausgabe der Authentic View-Ansicht sieht dann folgendermaßen aus:

 

EditableVarsAuthOutput

 

Beachten Sie die Einträge in der Auswahlliste, die Wahl der Gruppe B und dass nur die Gruppe B angezeigt wird.

© 2017-2023 Altova GmbH