Talk:OBF-file
XML
- Anmerkung
- Wenn möglich sollten alle Werte in Attribute gepackt werden. Deshalb ist z.B. das Element "Bezeichnung" besser als Attribut dargestellt (es sei den, es sollen noch Unterelemente gebildet werden).
So könnte eine ZIE-Datei im XML-Format aussehen:
<xml> <?xml version="1.0" encoding="utf-8"?> <Zielliste xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://130.83.196.154/BlueM">
<Ziel isOpt="true" ZielTyp="Reihe"> <Bezeichnung>SumFehlQ</Bezeichnung> <ZielFkt>AbQuad</ZielFkt> <SimReihe> <Datei Spalte="S3 _1ZU">WEL</Datei> </SimReihe> <Evaluierungszeitraum> <Start>1959-01-01T07:30:00</Start> <Ende>1973-12-31T07:30:00</Ende> </Evaluierungszeitraum> <ZielReihe> <Datei Spalte="">ZRE\OlefT_Zufl.zre</Datei> </ZielReihe> </Ziel> <Ziel isOpt="true" ZielTyp="Reihe"> <Bezeichnung>VolFehler</Bezeichnung> <ZielFkt>Volf</ZielFkt> <SimReihe> <Datei Spalte="S3 _1ZU">WEL</Datei> </SimReihe> <Evaluierungszeitraum> <Start>1959-01-01T07:30:00</Start> <Ende>1973-12-31T07:30:00</Ende> </Evaluierungszeitraum> <ZielReihe> <Datei Spalte="">ZRE\OlefT_Zufl.zre</Datei> </ZielReihe> </Ziel>
</Zielliste> </xml>
und so das zugehörige Schema (erstellt mit xsd.exe):
<xml> <?xml version="1.0" encoding="utf-8"?> <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Zielliste" nillable="true" type="Zielliste" /> <xs:complexType name="Zielliste"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="1" name="List_Ziele" type="ArrayOfZiel" /> </xs:sequence> </xs:complexType> <xs:complexType name="ArrayOfZiel"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="unbounded" name="Ziel" nillable="true" type="Ziel" /> </xs:sequence> </xs:complexType> <xs:complexType name="Ziel"> <xs:sequence> <xs:element minOccurs="0" maxOccurs="1" name="Bezeichnung" type="xs:string" /> <xs:element minOccurs="0" maxOccurs="1" name="ZielFkt" type="xs:string" /> <xs:element minOccurs="0" maxOccurs="1" name="SimReihe" type="Reihe" /> <xs:element minOccurs="1" maxOccurs="1" name="Evaluierungszeitraum" type="Struct_EvalZeitraum" /> <xs:element minOccurs="0" maxOccurs="1" name="ZielWert" type="ZielWert" /> <xs:element minOccurs="0" maxOccurs="1" name="ZielReihe" type="Reihe" /> </xs:sequence> <xs:attribute name="isOpt" type="xs:boolean" use="required" /> <xs:attribute name="ZielTyp" type="xs:string" /> </xs:complexType> <xs:complexType name="Reihe"> <xs:sequence> <xs:element minOccurs="1" maxOccurs="1" name="Datei" type="Struct_ReihenInfo" /> </xs:sequence> </xs:complexType> <xs:complexType name="Struct_ReihenInfo"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="Spalte" type="xs:string" /> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:complexType name="Struct_EvalZeitraum"> <xs:sequence> <xs:element minOccurs="1" maxOccurs="1" name="Start" type="xs:dateTime" /> <xs:element minOccurs="1" maxOccurs="1" name="Ende" type="xs:dateTime" /> </xs:sequence> </xs:complexType> <xs:complexType name="ZielWert"> <xs:simpleContent> <xs:extension base="xs:double"> <xs:attribute name="WertTyp" type="xs:string" /> </xs:extension> </xs:simpleContent> </xs:complexType>
</xs:schema> </xml>
Aggregation von Zielen
Siehe Bug 256
ZIE-Datei:
*Optimierungsziele *================= * *|------|--------------|---------|-------|----------|---------|--------------|--------------------|---------------------------| *| Eval | Ziel/Subziel | ZielTyp | Datei | SimGröße | ZielFkt | EvalZeitraum | Zielwert ODER Zielreihe | *| | | | | | | Start | Ende | WertTyp | ZielWert | ZielGröße | Datei | *|------|--------------|---------|-------|----------|---------|-------|------|---------|----------|-----------|---------------| | J | QSpitze | Wert | WEL | S100_1ZU | Diff | | | MaxWert | 50 | | | | J | SumFehlQ | Reihe | WEL | S100_1ZU | AbQuad | | | | | | Zeitreihe.zre | | N | Volfehler1 | Reihe | WEL | S100_1ZU | Volf | | | | | S100_ZU | Zeitreihe.wel | | N | Volfehler2 | Reihe | WEL | S101_1ZU | Volf | | | | | S101_ZU | Zeitreihe.wel | *|------|--------------|---------|-------|----------|---------|-------|------|---------|----------|-----------|---------------|
ZIG-Datei:
*Optimierungszielgruppen *======================= * *|------|-----------------|----------|------------|--------| *| Eval | Gruppe | Operator | Ziel | Faktor | *| | | | | | *|------|-----------------|----------|------------|--------| | J | VolfehlerMittel | + | Volfehler1 | 0.5 | | | | + | Volfehler2 | 0.5 | *|------|-----------------|----------|------------|--------|
*Optimierungszielgruppen *======================= * *|------|-----------------|--------------|----------|--------| *| Eval | Ziel | SubZiel | Operator | Faktor | *| | | | | | *|------|-----------------|--------------|----------|--------| | J | VolfehlerMittel | Volfehler1 | + | 0.5 | | | VolfehlerMittel | Volfehler2 | + | 0.5 | *|------|-----------------|--------------|----------|--------|
Dieses Beispiel hätte 3 Optimierungsziele (2 normale und ein aggregiertes), wobei das aggregierte aus dem Mittelwert von zwei normalen gebildet wird. (Froehlich 16:39, 12. Dez. 2007 (CET))
Neues Zie-Format
Um die Angabe von Bilanzwerten als Zielfunktion zu ermöglichen, sollte die zie-Datei umgebaut werden. Folgendermaßen könnte diese Datei aussehen:
*Optimierungsziele *================= * *Reihenvergleich *--------------- * *|-----|---------------|---------|---|-------|-------|------------|---------|-------|------|----------------------------------------|---------| *| Opt | Bezeichnung | Gruppe | R | OpFak | Datei | SimGröße | ZielFkt | EvalZeitraum | Referenzreihe | IstWert | *| | | | | | | | | Start | Ende | RefGröße | Datei | | *|-----|---------------|---------|---|-------|-------|------------|---------|-------|------|----------|-----------------------------|---------| | P | NashSutcliffe | | - | | WEL | B401 | NashSutt| | | | Zeitreihe.zre | | *|-----|---------------|---------|---|-------|-------|------------|---------|-------|------|----------|-----------------------------|---------| * *Wertevergleich *-------------- * *|-----|---------------|---------|---|-------|-------|------------|---------|------------------|----------------|---------|---------| *| Opt | Bezeichnung | Gruppe | R | OpFak | Datei | SimGröße | ZielFkt | Zielgröße | OptGröße | | IstWert | *| | | | | | | | | (Block) | (Spalte) | RefWert | | *|-----|---------------|---------|---|-------|-------|------------|---------|------------------|----------------|---------|---------| | P | OutfallLoad | | - | | RPT | | Diff | OutfallNode | AvgFlow | 0 | | | P | Becken | Becken | - | | | | | | | | | | S | Speicher | Becken | - | + | BLZ | B401 | | Speicher | maxVolume | | | | S | Speicher | Becken | - | + | BLZ | B701 | | Speicher | maxVolume | | | *|-----|---------------|---------|---|-------|-------|------------|---------|------------------|----------------|---------|---------| * *Reihenwertevergleich *-------------------- * *|-----|---------------|---------|---|-------|-------|------------|---------|-------|------|-------------------|---------| *| Opt | Bezeichnung | Gruppe | R | OpFak | Datei | SimGröße | ZielFkt | EvalZeitraum | Referenzwert | IstWert | *| | | | | | | | | Start | Ende | WertTyp | RefWert | | *|-----|---------------|---------|---|-------|-------|------------|---------|-------|------|---------|---------|---------| | P | OutfallLoad | | - | | WEL | B401_2AB | Diff | | | | | | *|-----|---------------|---------|---|-------|-------|------------|---------|-------|------|---------|---------|---------| *Sonderfälle *-----------