Schema knf.fi.Produkty.xsd


schema location ..\xsd\knf.fi.Produkty.xsd
attributeFormDefault unqualified
elementFormDefault qualified
 
Elements  Complex types 
Sprawozdanie  DaneTyp 
NaglowekTyp 
OkresSprawozdawczyTyp 
ProduktTyp 
SprawozdanieTyp 


element Sprawozdanie
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p1.png
type SprawozdanieTyp
properties
content complex
children Naglowek Dane
asserts
Test XPathDefaultNs Annotation
let $xml_file_path := string(base-uri()), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $schema_file_location := @xsi:noNamespaceSchemaLocation, $schema_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()], $schema_name := substring($schema_file_location, $schema_last_slash_pos + 1), $schema_type := substring-before(substring-after(substring-after($schema_name, '.'), '.'), '.'), $schema_type_upper := upper-case($schema_type), $regex_pattern := concat('^', $schema_type_upper, '_.*') return matches($xml_file_name, $regex_pattern) 
documentation
Typ raportu z nazwy pliku nie zgadza się z typem raportu wybranej XML schema. Typ raportu powinien być określony w nazwie pliku XML wielkimi literami.
documentation
SPRAWOZDANIE_00001
if (Naglowek/OkresSprawozdawczy) then let $periods_dict := map { 'Q1': '03', 'Q2': '06', 'Q3': '09', 'Q4': '12', 'H1': '06', 'H2': '12' }, $schema_file_location := @xsi:noNamespaceSchemaLocation, $second_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-2], $third_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-3], $schema_date := concat(substring($schema_file_location, $third_last_slash_pos + 1, 4), substring($schema_file_location, $second_last_slash_pos + 1, 2)), $quarter := string(Naglowek/OkresSprawozdawczy/Kwartal), $half := string(Naglowek/OkresSprawozdawczy/Polrocze), $report_date := if (Naglowek/OkresSprawozdawczy/DataDo) then replace(substring(string(Naglowek/OkresSprawozdawczy/DataDo), 1, 7), '-', '') else if (Naglowek/OkresSprawozdawczy/DataOd) then replace(substring(string(Naglowek/OkresSprawozdawczy/DataOd), 1, 7), '-', '') else concat(Naglowek/OkresSprawozdawczy/Rok, $periods_dict($half), $periods_dict($quarter), Naglowek/OkresSprawozdawczy/Miesiac) return $schema_date = $report_date else true() 
documentation
Należy użyć schemy XML dla odpowiedniego okresu (rok i miesiąc muszą odpowiadać dacie z elementu OkresSprawozdawczy)
documentation
SPRAWOZDANIE_00002
if (Naglowek/DzienZdarzenia) then let $schema_file_location := @xsi:noNamespaceSchemaLocation, $second_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-2], $third_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-3], $schema_date := concat(substring($schema_file_location, $third_last_slash_pos + 1, 4), substring($schema_file_location, $second_last_slash_pos + 1, 2)), $report_date := replace(string(Naglowek/DzienZdarzenia), '-', '') return $schema_date = substring($report_date, 1, 6) else true() 
documentation
Należy użyć schemy XML dla odpowiedniego okresu (rok i miesiąc muszą odpowiadać dacie z elementu DzienZdarzenia)
documentation
SPRAWOZDANIE_00003
starts-with(@xsi:noNamespaceSchemaLocation, 'https://sprawozdawczosc.knf.gov.pl/') 
documentation
Należy odwołać się do schemy XML zamieszczonej na domenie: https://sprawozdawczosc.knf.gov.pl/
documentation
SPRAWOZDANIE_00004
annotation
documentation
Sprawozdanie kwartalne funduszu inwestycyjnego (Załącznik nr 9 Punkt 6)
documentation
Informacje o wartości jednostek uczestnictwa funduszu inwestycyjnego nabywanych lub zbywanych w ramach umów zawartych między funduszem inwestycyjnym lub towarzystwem a uczestnikiem, w szczególności o charakterze produktowym, według stanu na ostatni dzień wyceny w kwartale.

complexType DaneTyp
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p2.png
children Produkt BrakProduktow
used by
element SprawozdanieTyp/Dane
annotation
documentation
Dane sprawozdania

element DaneTyp/Produkt
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p3.png
type ProduktTyp
properties
minOcc 1
maxOcc unbounded
content complex
children WAN
attributes
Name  Type  Use  Default  Fixed  Annotation
KodProduktu  TypyProduktowTyp  required      
documentation
Kod produktu
documentation
Wskazanie produktu
annotation
documentation
Produkt

element DaneTyp/BrakProduktow
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p4.png
type WskaznikLogiczny1albotrueTyp
properties
content simple
facets
Kind Value Annotation
pattern 1|true
annotation
documentation
Oznaczenie braku produktów

complexType NaglowekTyp
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p5.png
type restriction of NaglowekTypAbs
properties
base NaglowekTypAbs
children IdentyfikatorZarzadzajacego NazwaZarzadzajacego IdentyfikatorFunduszuSubfunduszu NazwaFunduszuSubfunduszu IdentyfikatorDostawcyDanych DzienWyceny WalutaSprawozdania OkresSprawozdawczy CzyKorekta
used by
element SprawozdanieTyp/Naglowek
attributes
Name  Type  Use  Default  Fixed  Annotation
CzyFunduszWLikwidacji  WskaznikLogiczny0lub1albotruelubfalseTyp  prohibited      
documentation
Flaga wskazująca, czy fundusz lub subfundusz jest w likwidacji
documentation
Flaga wskazująca, czy fundusz lub subfundusz jest w likwidacji.
true - jeśli fundusz/subfundusz jest w likwidacji
false - jeśli fundusz/subfundusz nie jest w likwidacji
asserts
Test XPathDefaultNs Annotation
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $file_name_pattern := upper-case(string('[A-Z]+_[A-Z0-9]{11,11}_[A-Z0-9]{10,20}_[0-9QH]{4,8}_[01].xml')), $xml_file_name := substring($xml_file_path, $last_slash_pos + 1) return matches($xml_file_name, $file_name_pattern)  
documentation
Nazwa pliku niezgodna z maską
documentation
NAGLOWEK_00001
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_entity_id := substring($xml_file_name, $dash_pos[1] + 1, $dash_pos[2] - $dash_pos[1] - 1) return $xml_file_entity_id = IdentyfikatorFunduszuSubfunduszu or (not(IdentyfikatorFunduszuSubfunduszu) and $xml_file_entity_id = IdentyfikatorZarzadzajacego) 
documentation
Identyfikator krajowy (sub)funduszu lub TFI w treści nagłówka niezgodny z identyfikatorem w nazwie pliku
documentation
NAGLOWEK_00002
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_identyfikator_dostawcy := substring($xml_file_name, $dash_pos[2] + 1, $dash_pos[3] - $dash_pos[2] - 1) return $xml_file_identyfikator_dostawcy = IdentyfikatorDostawcyDanych 
documentation
Identyfikator dostawcy danych w treści nagłówka niezgodny z kodem w nazwie pliku
documentation
NAGLOWEK_00003
if (OkresSprawozdawczy) then let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_okres_spr := substring($xml_file_name, $dash_pos[3] + 1, $dash_pos[4] - $dash_pos[3] - 1), $okres_sprawozdawczy := if (OkresSprawozdawczy/Rok) then concat(OkresSprawozdawczy/Rok, OkresSprawozdawczy/Polrocze, OkresSprawozdawczy/Kwartal, OkresSprawozdawczy/Miesiac) else if (OkresSprawozdawczy/DataDo) then replace(string(OkresSprawozdawczy/DataDo), '-', '') else if (OkresSprawozdawczy/DataOd) then replace(string(OkresSprawozdawczy/DataOd), '-', '') else '' return $xml_file_okres_spr = $okres_sprawozdawczy else true() 
documentation
Okres sprawozdawczy w treści nagłówka niezgodny z okresem w nazwie pliku
documentation
NAGLOWEK_00004
if (DzienZdarzenia) then let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_okres_spr := substring($xml_file_name, $dash_pos[3] + 1, $dash_pos[4] - $dash_pos[3] - 1), $dzien_zdarzenia := replace(string(DzienZdarzenia), '-', '') return $xml_file_okres_spr = $dzien_zdarzenia else true() 
documentation
DzienZdarzenia w treści nagłówka niezgodny z dniem zdarzenia w nazwie pliku
documentation
NAGLOWEK_00005
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_czy_korekta := substring($xml_file_name, $dash_pos[4] + 1, 1) return xs:boolean($xml_file_czy_korekta) = CzyKorekta 
documentation
Flaga CzyKorekta w treści nagłówka niezgodna z informacją w nazwie pliku
documentation
NAGLOWEK_00006
annotation
documentation
Nagłówek sprawozdania

attribute NaglowekTyp/@CzyFunduszWLikwidacji
type WskaznikLogiczny0lub1albotruelubfalseTyp
properties
use prohibited
annotation
documentation
Flaga wskazująca, czy fundusz lub subfundusz jest w likwidacji
documentation
Flaga wskazująca, czy fundusz lub subfundusz jest w likwidacji.
true - jeśli fundusz/subfundusz jest w likwidacji
false - jeśli fundusz/subfundusz nie jest w likwidacji

element NaglowekTyp/IdentyfikatorZarzadzajacego
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p6.png
type IdentyfikatorTFITyp
properties
content simple
facets
Kind Value Annotation
pattern PLTFI[0-9]{6,6}
annotation
documentation
Identyfikator krajowy towarzystwa
documentation
Identyfikator krajowy towarzystwa

element NaglowekTyp/NazwaZarzadzajacego
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p7.png
type Opis300ZnakowTyp
properties
content simple
facets
Kind Value Annotation
minLength 1
maxLength 300
annotation
documentation
Nazwa towarzystwa
documentation
Nazwa towarzystwa

element NaglowekTyp/IdentyfikatorFunduszuSubfunduszu
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p8.png
type tpp:IdentyfikatorFIOSFIOTyp
properties
content simple
annotation
documentation
Identyfikator krajowy funduszu lub subfunduszu
documentation
Identyfikator krajowy funduszu lub subfunduszu

element NaglowekTyp/NazwaFunduszuSubfunduszu
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p9.png
type Opis300ZnakowTyp
properties
content simple
facets
Kind Value Annotation
minLength 1
maxLength 300
annotation
documentation
Nazwa funduszu lub subfunduszu
documentation
Nazwa funduszu lub subfunduszu

element NaglowekTyp/IdentyfikatorDostawcyDanych
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p10.png
type tpp:IdentyfikatorDostawcyDanychTyp
properties
content simple
annotation
documentation
Identyfikator dostawcy danych
documentation
Identyfikator podmiotu, który przygotował dane dla podmiotu raportującego

element NaglowekTyp/DzienWyceny
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p11.png
type DataPrzedzial2Typ
properties
content simple
facets
Kind Value Annotation
minInclusive 1989-01-01
maxInclusive 2099-12-31
annotation
documentation
Dzień wyceny
documentation
Ostatni dzień wyceny w okresie sprawozdawczym.

element NaglowekTyp/WalutaSprawozdania
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p12.png
type WalutyPodstawoweTyp
properties
content simple
annotation
documentation
Waluta wyceny funduszu, waluta w której są raportowane wartości. 3-znakowy kod waluty zgodny z normą ISO
documentation
Waluta wyceny funduszu, waluta w której są raportowane wartości. 3-znakowy kod waluty zgodny z normą ISO

element NaglowekTyp/OkresSprawozdawczy
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p13.png
type OkresSprawozdawczyTyp
properties
content complex
children DataOd DataDo Rok Kwartal
asserts
Test XPathDefaultNs Annotation
if (DataOd and DataDo) then DataDo >= DataOd else true() 
documentation
DataDo musi być większa lub równa od DataOd
documentation
NAGLOWEK_00007
if (DataDo) then let $periods_start_dict := map { 'Q1': 1, 'Q2': 4, 'Q3': 7, 'Q4': 10, 'H1': 1, 'H2': 7 }, $periods_end_dict := map { 'Q1': 3, 'Q2': 6, 'Q3': 9, 'Q4': 12, 'H1': 6, 'H2': 12 }, $year := year-from-date(DataDo), $month := month-from-date(DataDo), $month_validation := if (Miesiac) then $month = number(Miesiac) else if (Kwartal) then $month >= $periods_start_dict(Kwartal) and $periods_end_dict(Kwartal) >= $month else if (Polrocze) then $month >= $periods_start_dict(Polrocze) and $periods_end_dict(Polrocze) >= $month else true() return $year = number(Rok) and $month_validation else true() 
documentation
DataDo musi zawierać się w raportowanym okresie sprawozdawczym (elementy: Rok i Polrocze/Kwartal/Miesiac)
documentation
NAGLOWEK_00008
annotation
documentation
Okres sprawozdawczy raportu

element NaglowekTyp/CzyKorekta
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p14.png
type WskaznikLogiczny0lub1Typ
properties
content simple
facets
Kind Value Annotation
pattern 0|1
annotation
documentation
Oznaczenie czy plik zawiera raport podstawowy czy korektę, 0 - podstawowy, 1 - korekta
documentation
Oznaczenie czy plik zawiera raport podstawowy czy korektę, 0 - podstawowy, 1 - korekta

complexType OkresSprawozdawczyTyp
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p15.png
type restriction of OkresSprawozdawczyTypAbs
properties
base OkresSprawozdawczyTypAbs
children DataOd DataDo Rok Kwartal
used by
element NaglowekTyp/OkresSprawozdawczy
asserts
Test XPathDefaultNs Annotation
if (DataOd and DataDo) then DataDo >= DataOd else true() 
documentation
DataDo musi być większa lub równa od DataOd
documentation
NAGLOWEK_00007
if (DataDo) then let $periods_start_dict := map { 'Q1': 1, 'Q2': 4, 'Q3': 7, 'Q4': 10, 'H1': 1, 'H2': 7 }, $periods_end_dict := map { 'Q1': 3, 'Q2': 6, 'Q3': 9, 'Q4': 12, 'H1': 6, 'H2': 12 }, $year := year-from-date(DataDo), $month := month-from-date(DataDo), $month_validation := if (Miesiac) then $month = number(Miesiac) else if (Kwartal) then $month >= $periods_start_dict(Kwartal) and $periods_end_dict(Kwartal) >= $month else if (Polrocze) then $month >= $periods_start_dict(Polrocze) and $periods_end_dict(Polrocze) >= $month else true() return $year = number(Rok) and $month_validation else true() 
documentation
DataDo musi zawierać się w raportowanym okresie sprawozdawczym (elementy: Rok i Polrocze/Kwartal/Miesiac)
documentation
NAGLOWEK_00008
annotation
documentation
Okres sprawozdawczy

element OkresSprawozdawczyTyp/DataOd
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p16.png
type DataPrzedzial1Typ
properties
content simple
facets
Kind Value Annotation
minInclusive 2022-01-01
maxInclusive 2099-12-31
annotation
documentation
Pierwszy dzień kalendarzowy okresu sprawozdawczego lub inna data, jeśli raport nie obejmuje pełnego okresu sprawozdawczego.
documentation
Pierwszy dzień kalendarzowy okresu sprawozdawczego. W przypadku raportu, który nie obejmuje pełnego okresu sprawozdawczego, należy podać inną datę (np. datę otwarcia ksiąg rachunkowych funduszu).
documentation
1) Jeśli (sub)fundusz prowadzi działalność przez pełny okres sprawozdawczy (i przez cały ten okres sprawozdawczy ma otwarte księgi rachunkowe), to w raporcie z danymi za pierwszy kwartał 2024 roku powinien w polu "DataOd" wpisać "2024-01-01".
2) Jeśli (sub)fundusz otworzył księgi rachunkowe 15.03.2024, to w raporcie z danymi za pierwszy kwartał 2024 roku powinien w polu „DataOd” wpisać „2024-03-15”.

element OkresSprawozdawczyTyp/DataDo
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p17.png
type DataPrzedzial1Typ
properties
content simple
facets
Kind Value Annotation
minInclusive 2022-01-01
maxInclusive 2099-12-31
annotation
documentation
Ostatni dzień kalendarzowy okresu sprawozdawczego lub inna data, jeśli raport nie obejmuje pełnego okresu sprawozdawczego.
documentation
Ostatni dzień kalendarzowy okresu sprawozdawczego. W przypadku raportu, który nie obejmuje pełnego okresu sprawozdawczego, należy podać inną datę (np. datę likwidacji funduszu).
documentation
1) Jeśli (sub)fundusz prowadzi działalność i przesyła raport za 3Q 2024, to w polu „DataDo” należy wpisać „2024-09-30”.
2) Jeśli (sub)fundusz otworzył likwidację 2024-09-15, to w polu „DataDo” należy wpisać „2024-09-15”.

element OkresSprawozdawczyTyp/Rok
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p18.png
type OkresSprawozdawczyRokTyp
properties
content simple
facets
Kind Value Annotation
pattern 202[3-9]|20[3-9][0-9]
annotation
documentation
Rok, w którym przypada data określona w polu „DataDo” elementu „OkresSprawozdawczy”.
documentation
Rok, w którym przypada data określona w polu „DataDo” elementu „OkresSprawozdawczy”.
documentation
1) Jeśli (sub)fundusz prowadzi działalność i pole „DataDo” jest wypełnione „2024-03-31”, to należy wpisać „2024” w polu „Rok”.
2) Jeśli (sub)fundusz otworzył likwidację w dniu 15.03.2024 i pole „DataDo” jest wypełnione „2024-03-15”, to należy wpisać „2024” w polu „Rok”.

element OkresSprawozdawczyTyp/Kwartal
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p19.png
type OkresSprawozdawczyKwartalTyp
properties
content simple
facets
Kind Value Annotation
pattern Q[1-4]
annotation
documentation
Kwartał, w którym przypada data określona w polu „DataDo” elementu „OkresSprawozdawczy”.
documentation
Kwartał, w którym przypada data określona w polu „DataDo” elementu „OkresSprawozdawczy”.
documentation
1) Jeśli (sub)fundusz prowadzi działalność i pole „DataDo” jest wypełnione „2024-03-31”, to należy wpisać „Q1” w polu „Kwartal”.
2) Jeśli (sub)fundusz otworzył likwidację w dniu 15.03.2024 i pole „DataDo” jest wypełnione „2024-03-15”, to należy wpisać „Q1” w polu „Kwartal”.

complexType ProduktTyp
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p20.png
children WAN
used by
element DaneTyp/Produkt
attributes
Name  Type  Use  Default  Fixed  Annotation
KodProduktu  TypyProduktowTyp  required      
documentation
Kod produktu
documentation
Wskazanie produktu
annotation
documentation
Produkt

attribute ProduktTyp/@KodProduktu
type TypyProduktowTyp
properties
use required
annotation
documentation
Kod produktu
documentation
Wskazanie produktu

element ProduktTyp/WAN
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p21.png
type Liczba19.2Typ
properties
content simple
facets
Kind Value Annotation
totalDigits 19
fractionDigits 2
annotation
documentation
Wartość aktywów netto przypadająca na dany rodzaj produktu
documentation
Wartość aktywów netto przypadająca na dany rodzaj produktu na dzień wyceny.

complexType SprawozdanieTyp
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p22.png
type extension of SprawozdanieTypAbs
properties
base SprawozdanieTypAbs
children Naglowek Dane
used by
element Sprawozdanie
asserts
Test XPathDefaultNs Annotation
let $xml_file_path := string(base-uri()), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $schema_file_location := @xsi:noNamespaceSchemaLocation, $schema_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()], $schema_name := substring($schema_file_location, $schema_last_slash_pos + 1), $schema_type := substring-before(substring-after(substring-after($schema_name, '.'), '.'), '.'), $schema_type_upper := upper-case($schema_type), $regex_pattern := concat('^', $schema_type_upper, '_.*') return matches($xml_file_name, $regex_pattern) 
documentation
Typ raportu z nazwy pliku nie zgadza się z typem raportu wybranej XML schema. Typ raportu powinien być określony w nazwie pliku XML wielkimi literami.
documentation
SPRAWOZDANIE_00001
if (Naglowek/OkresSprawozdawczy) then let $periods_dict := map { 'Q1': '03', 'Q2': '06', 'Q3': '09', 'Q4': '12', 'H1': '06', 'H2': '12' }, $schema_file_location := @xsi:noNamespaceSchemaLocation, $second_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-2], $third_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-3], $schema_date := concat(substring($schema_file_location, $third_last_slash_pos + 1, 4), substring($schema_file_location, $second_last_slash_pos + 1, 2)), $quarter := string(Naglowek/OkresSprawozdawczy/Kwartal), $half := string(Naglowek/OkresSprawozdawczy/Polrocze), $report_date := if (Naglowek/OkresSprawozdawczy/DataDo) then replace(substring(string(Naglowek/OkresSprawozdawczy/DataDo), 1, 7), '-', '') else if (Naglowek/OkresSprawozdawczy/DataOd) then replace(substring(string(Naglowek/OkresSprawozdawczy/DataOd), 1, 7), '-', '') else concat(Naglowek/OkresSprawozdawczy/Rok, $periods_dict($half), $periods_dict($quarter), Naglowek/OkresSprawozdawczy/Miesiac) return $schema_date = $report_date else true() 
documentation
Należy użyć schemy XML dla odpowiedniego okresu (rok i miesiąc muszą odpowiadać dacie z elementu OkresSprawozdawczy)
documentation
SPRAWOZDANIE_00002
if (Naglowek/DzienZdarzenia) then let $schema_file_location := @xsi:noNamespaceSchemaLocation, $second_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-2], $third_last_slash_pos := index-of(string-to-codepoints($schema_file_location), string-to-codepoints('/'))[last()-3], $schema_date := concat(substring($schema_file_location, $third_last_slash_pos + 1, 4), substring($schema_file_location, $second_last_slash_pos + 1, 2)), $report_date := replace(string(Naglowek/DzienZdarzenia), '-', '') return $schema_date = substring($report_date, 1, 6) else true() 
documentation
Należy użyć schemy XML dla odpowiedniego okresu (rok i miesiąc muszą odpowiadać dacie z elementu DzienZdarzenia)
documentation
SPRAWOZDANIE_00003
starts-with(@xsi:noNamespaceSchemaLocation, 'https://sprawozdawczosc.knf.gov.pl/') 
documentation
Należy odwołać się do schemy XML zamieszczonej na domenie: https://sprawozdawczosc.knf.gov.pl/
documentation
SPRAWOZDANIE_00004
annotation
documentation
Sprawozdanie

element SprawozdanieTyp/Naglowek
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p23.png
type NaglowekTyp
properties
content complex
children IdentyfikatorZarzadzajacego NazwaZarzadzajacego IdentyfikatorFunduszuSubfunduszu NazwaFunduszuSubfunduszu IdentyfikatorDostawcyDanych DzienWyceny WalutaSprawozdania OkresSprawozdawczy CzyKorekta
asserts
Test XPathDefaultNs Annotation
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $file_name_pattern := upper-case(string('[A-Z]+_[A-Z0-9]{11,11}_[A-Z0-9]{10,20}_[0-9QH]{4,8}_[01].xml')), $xml_file_name := substring($xml_file_path, $last_slash_pos + 1) return matches($xml_file_name, $file_name_pattern)  
documentation
Nazwa pliku niezgodna z maską
documentation
NAGLOWEK_00001
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_entity_id := substring($xml_file_name, $dash_pos[1] + 1, $dash_pos[2] - $dash_pos[1] - 1) return $xml_file_entity_id = IdentyfikatorFunduszuSubfunduszu or (not(IdentyfikatorFunduszuSubfunduszu) and $xml_file_entity_id = IdentyfikatorZarzadzajacego) 
documentation
Identyfikator krajowy (sub)funduszu lub TFI w treści nagłówka niezgodny z identyfikatorem w nazwie pliku
documentation
NAGLOWEK_00002
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_identyfikator_dostawcy := substring($xml_file_name, $dash_pos[2] + 1, $dash_pos[3] - $dash_pos[2] - 1) return $xml_file_identyfikator_dostawcy = IdentyfikatorDostawcyDanych 
documentation
Identyfikator dostawcy danych w treści nagłówka niezgodny z kodem w nazwie pliku
documentation
NAGLOWEK_00003
if (OkresSprawozdawczy) then let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_okres_spr := substring($xml_file_name, $dash_pos[3] + 1, $dash_pos[4] - $dash_pos[3] - 1), $okres_sprawozdawczy := if (OkresSprawozdawczy/Rok) then concat(OkresSprawozdawczy/Rok, OkresSprawozdawczy/Polrocze, OkresSprawozdawczy/Kwartal, OkresSprawozdawczy/Miesiac) else if (OkresSprawozdawczy/DataDo) then replace(string(OkresSprawozdawczy/DataDo), '-', '') else if (OkresSprawozdawczy/DataOd) then replace(string(OkresSprawozdawczy/DataOd), '-', '') else '' return $xml_file_okres_spr = $okres_sprawozdawczy else true() 
documentation
Okres sprawozdawczy w treści nagłówka niezgodny z okresem w nazwie pliku
documentation
NAGLOWEK_00004
if (DzienZdarzenia) then let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_okres_spr := substring($xml_file_name, $dash_pos[3] + 1, $dash_pos[4] - $dash_pos[3] - 1), $dzien_zdarzenia := replace(string(DzienZdarzenia), '-', '') return $xml_file_okres_spr = $dzien_zdarzenia else true() 
documentation
DzienZdarzenia w treści nagłówka niezgodny z dniem zdarzenia w nazwie pliku
documentation
NAGLOWEK_00005
let $xml_file_path := upper-case(string(base-uri())), $last_slash_pos := index-of(string-to-codepoints(upper-case(string(base-uri()))), string-to-codepoints('/'))[last()], $xml_file_name := substring($xml_file_path, $last_slash_pos + 1), $dash_pos := index-of(string-to-codepoints($xml_file_name), string-to-codepoints('_')), $xml_file_czy_korekta := substring($xml_file_name, $dash_pos[4] + 1, 1) return xs:boolean($xml_file_czy_korekta) = CzyKorekta 
documentation
Flaga CzyKorekta w treści nagłówka niezgodna z informacją w nazwie pliku
documentation
NAGLOWEK_00006
annotation
documentation
Nagłówek sprawozdania

element SprawozdanieTyp/Dane
diagram knf.fi.Produkty_diagrams/knf.fi.Produkty_p24.png
type DaneTyp
properties
content complex
children Produkt BrakProduktow
identity constraints
  Name  Refer  Selector  Field(s)  Annotation
key  PRODUKTY_00001    Produkt  @KodProduktu  
documentation
Kod produktu musi być unikalny w ramach pliku
documentation
Unikalność kodu produktu w ramach pliku
annotation
documentation
Dane sprawozdania


XML Schema documentation generated by XMLSpy Schema Editor http://www.altova.com/xmlspy