Schema knf.fi.Uczestnicy.xsd


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


element Sprawozdanie
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_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 Tabela 7)
documentation
Informacje o uczestnikach, według stanu na ostatni dzień wyceny w kwartale

complexType DaneTyp
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p2.png
children Uczestnicy BrakUczestnikow
used by
element SprawozdanieTyp/Dane
annotation
documentation
Dane sprawozdania

element DaneTyp/Uczestnicy
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p3.png
type UczestnicyTyp
properties
minOcc 1
maxOcc unbounded
content complex
children LiczbaUczestnikow WAN
attributes
Name  Type  Use  Default  Fixed  Annotation
RodzajUczestnikow  RodzajeUczestnikowTyp  required      
documentation
Identyfikacja rodzaju uczestnika
documentation
Wskazanie rodzaju uczestników w funduszu inwestycyjnym.
annotation
documentation
Uczestnicy funduszu
documentation
Jeśli uczestnikami (sub)funduszu są osoby fizyczne (100 unikalnych osób fizycznych) oraz osoby prawne (2 banki - bank X1 oraz bank X2) to należy uzupełnić 2 elementy 'Uczestnicy'.
Pierwszy element 'Uczestnicy' powinien mieć wskazany RodzajUczestnikow = 'OSOBY_FIZYCZNE', następnie łączną liczbę osób fizycznych (w tym przypadku 100) oraz łączny WAN w posiadaniu tych uczestników.
Drugi element 'Uczestnicy' powinien mieć wskazany RodzajUczestnikow = 'BANKI', następnie łączna liczbę banków (w tym przypadku 2) oraz łączny WAN w posiadaniu tych uczestników.

element DaneTyp/BrakUczestnikow
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p4.png
type WskaznikLogiczny1albotrueTyp
properties
content simple
facets
Kind Value Annotation
pattern 1|true
annotation
documentation
Oznaczenie braku uczestników

complexType NaglowekTyp
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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. dzień poprzedzający otwarcie likwidacji funduszu inwestycyjnego).
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-14”.

element OkresSprawozdawczyTyp/Rok
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_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.Uczestnicy_diagrams/knf.fi.Uczestnicy_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 SprawozdanieTyp
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p20.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.Uczestnicy_diagrams/knf.fi.Uczestnicy_p21.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.Uczestnicy_diagrams/knf.fi.Uczestnicy_p22.png
type DaneTyp
properties
content complex
children Uczestnicy BrakUczestnikow
identity constraints
  Name  Refer  Selector  Field(s)  Annotation
key  UCZESTNICY_00001    Uczestnicy  @RodzajUczestnikow  
documentation
Rodzaj uczestników musi być unikalny w ramach pliku
documentation
Unikalność rodzaju uczestników w ramach pliku
annotation
documentation
Dane sprawozdania

complexType UczestnicyTyp
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p23.png
children LiczbaUczestnikow WAN
used by
element DaneTyp/Uczestnicy
attributes
Name  Type  Use  Default  Fixed  Annotation
RodzajUczestnikow  RodzajeUczestnikowTyp  required      
documentation
Identyfikacja rodzaju uczestnika
documentation
Wskazanie rodzaju uczestników w funduszu inwestycyjnym.
annotation
documentation
Uczestnicy

attribute UczestnicyTyp/@RodzajUczestnikow
type RodzajeUczestnikowTyp
properties
use required
annotation
documentation
Identyfikacja rodzaju uczestnika
documentation
Wskazanie rodzaju uczestników w funduszu inwestycyjnym.

element UczestnicyTyp/LiczbaUczestnikow
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p24.png
type LiczbaCalkowitaNieujemna19Typ
properties
content simple
facets
Kind Value Annotation
minInclusive 0
totalDigits 19
fractionDigits 0
annotation
documentation
Liczba uczestników
documentation
Liczba unikalnych uczestników danego rodzaju posiadających jednostki uczestnictwa funduszu lub subfunduszu na dzień wyceny (będących właścicielem lub współwłaścicielem min. jednego niezerowego rejestru).
W przypadku rejestru małzeńskiego, liczba uczestników wynosi 2. W przypadku rejestru małzeńskiego i rejestrów indywidualnych tych samych uczestników, liczba uczestników dalej wynosi 2.

element UczestnicyTyp/WAN
diagram knf.fi.Uczestnicy_diagrams/knf.fi.Uczestnicy_p25.png
type Liczba19.2Typ
properties
content simple
facets
Kind Value Annotation
totalDigits 19
fractionDigits 2
annotation
documentation
Wartość aktywów netto
documentation
Łączna wartość aktywów netto będąca w posiadaniu wszystkich uczestników danego rodzaju na dzień wyceny.
documentation
Jeśli na danym (sub)funduszu uczestnikami są 2 zakłady ubezpieczeń, z czego pierwszy zakład ubezpieczeń ma j.u. o wartości 1 mln PLN, a drugi o wartości 3 mln PLN, to w polu WAN należy wpisać sumę tych WANów, tj. 4 mln PLN.


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