Schemat ekstrakcji: Interpretacje podatkowe¶
Wszystkie pola mają jawnie określony typ danych i metodę agregacji. Obiekty JSON rozbite na flat kolumny. Free text pola uzupełnione o enum klasyfikatory. Gotowy do implementacji w HuggingFace Datasets / Parquet / PostgreSQL.
Profil agregowalności¶
73 pola łącznie:
ENUM .............. 22 pól (30%) → GROUP BY, COUNT, rozkłady
BOOL .............. 14 pól (19%) → proporcje, korelacje
INT/FLOAT .......... 8 pól (11%) → avg, median, histogram
SCORE (1-5) ........ 4 pola ( 5%) → rozkłady, korelacje
DATE ............... 2 pola ( 3%) → szeregi czasowe
ENUM_ARRAY ......... 3 pola ( 4%) → multi-label frequency
KEYWORDS ........... 4 pola ( 5%) → frequency, TF-IDF
ID_REF ............. 5 pól ( 7%) → citation networks
FREE_TEXT .......... 11 pól (15%) → embedding, NLP
Natychmiastowa agregacja (bez NLP): 78%
A. IDENTYFIKACJA (5 pól)¶
| # | Pole | Typ danych | Agregacja | Opis | Wartości dozwolone |
|---|---|---|---|---|---|
| 1 | document_number |
ID | — | Sygnatura, np. 0114-KDIP2-1.4010.123.2023.1.AB |
— |
| 2 | date_issued |
DATE | szeregi czasowe, trendy | Data wydania interpretacji (ISO 8601) | — |
| 3 | date_received |
DATE | szeregi czasowe | Data wpływu wniosku (ISO 8601), jeśli podana | — |
| 4 | document_type |
ENUM | GROUP BY | Typ dokumentu | interpretacja_indywidualna / interpretacja_ogolna / objasnienia_podatkowe |
| 5 | issuing_authority |
ENUM | GROUP BY | Organ wydający | dyrektor_kis / minister_finansow / szef_kas |
B. KLASYFIKACJA MERYTORYCZNA — ENUM (17 pól)¶
Pola natychmiastowo agregowalne: pie chart, bar chart, cross-tabulation, chi-square.
| # | Pole | Typ danych | Wartości dozwolone | Opis |
|---|---|---|---|---|
| 6 | tax_type |
ENUM | PIT / CIT / VAT / PCC / akcyza / podatek_od_nieruchomosci / ordynacja_podatkowa / clo / podatek_od_spadkow / inne |
Rodzaj podatku |
| 7 | tax_subtype |
ENUM | PIT: skala / liniowy / ryczalt / karta_podatkowa / kapitalowy / inne_pit; CIT: ogolny / estonski / minimalny / WHT / inne_cit; VAT: krajowy / wdt_wnt / import_export / odliczenie / zwolnienie / stawka / mpp / inne_vat |
Podtyp podatkowy — uszczegóławia tax_type |
| 8 | decision_type |
ENUM | stanowisko_prawidlowe / stanowisko_nieprawidlowe / stanowisko_czesciowo_prawidlowe |
Rozstrzygnięcie |
| 9 | applicant_type |
ENUM | osoba_fizyczna / spolka_kapitalowa / spolka_osobowa / spolka_cywilna / fundacja / stowarzyszenie / jst / grupa_vat / spoldzielnia / jednoosobowa_dzialalnosc / inne |
Typ wnioskodawcy |
| 10 | applicant_industry |
ENUM | IT_software / e_commerce / finanse_bankowosc / nieruchomosci / budownictwo / produkcja / transport_logistyka / handel_detaliczny / handel_hurtowy / uslugi_profesjonalne / zdrowie_farmacja / energia / rolnictwo / gastronomia_hotelarstwo / media_reklama / edukacja / telekomunikacja / gornictwo / inne / brak_danych |
Branża wnioskodawcy |
| 11 | transaction_type |
ENUM | krajowa / wewnatrzwspolnotowa / eksport / import / transgraniczna_pozaunijna / mieszana |
Typ transakcji |
| 12 | trigger_event |
ENUM | nowa_transakcja / zmiana_przepisow / planowanie_podatkowe / reorganizacja / kontrola_podatkowa / spor_z_organem / poczatek_dzialalnosci / zmiana_formy_opodatkowania / transakcja_miedzynarodowa / otrzymanie_interpretacji_negatywnej / inne |
Co wywołało potrzebę uzyskania interpretacji |
| 13 | case_subject_category |
ENUM | koszty_uzyskania_przychodow / przychod_moment_powstania / zwolnienie_podatkowe / stawka_podatku / odliczenie_vat / miejsce_swiadczenia / podstawa_opodatkowania / obowiazek_podatkowy / ceny_transferowe / amortyzacja / reprezentacja_reklama / daniny_publiczne / zabezpieczenie_spoleczne / dzialalnosc_nierejestrowana / kryptoaktywa / ip_box / ulga_badawczo_rozwojowa / estonski_cit / ryczalt_najem / split_payment / biala_lista / inne |
Główny temat merytoryczny interpretacji |
| 14 | tax_planning_aggressiveness |
ENUM | konserwatywne / umiarkowane / agresywne / graniczne |
Poziom agresywności planowania |
| 15 | fiscal_impact_direction |
ENUM | korzystna_dla_podatnika / korzystna_dla_fiskusa / neutralna |
Kierunek wpływu fiskalnego |
| 16 | position_type |
ENUM | szersza_wykladnia / wezsza_wykladnia / zwolnienie / wylaczenie / inna_kwalifikacja / inna_stawka / inna_podstawa / brak_obowiazku / inne |
Typ stanowiska wnioskodawcy (czego oczekuje) |
| 17 | ambiguity_type |
ENUM | leksykalna / strukturalna / celowosciowa / kolizja_norm / luka_prawna / brak_definicji / sprzeczne_orzecznictwo / brak |
Typ wieloznaczności przepisu powodującego wątpliwość |
| 18 | overruling_risk_level |
ENUM | niskie / srednie / wysokie |
Ryzyko uchylenia przez sąd |
| 19 | evolution_direction |
ENUM | liberalizacja / zaostrzenie / stabilna / brak_danych |
Kierunek ewolucji linii interpretacyjnej |
| 20 | conflict_resolution_method |
ENUM | lex_specialis / lex_posterior / hierarchiczny / wykladnia_prounijna / wykladnia_prokonstytucyjna / brak_konfliktu |
Jak rozwiązano konflikt norm (jeśli występował) |
| 21 | primary_legal_act |
ENUM | ustawa_pit / ustawa_cit / ustawa_vat / ordynacja_podatkowa / ustawa_pcc / ustawa_akcyzowa / ustawa_rachunkowosci / kodeks_cywilny / kodeks_spolek_handlowych / prawo_celne / dyrektywa_vat_2006_112 / dyrektywa_2011_96 / inne |
Główny akt prawny będący przedmiotem interpretacji |
| 22 | applicant_size |
ENUM | mikro / maly / sredni / duzy / brak_danych |
Wielkość przedsiębiorstwa wnioskodawcy (jeśli wynika z opisu) |
C. KLASYFIKACJA — BOOL (14 pól)¶
Agregacja: proporcje (% true), korelacje z innymi polami, trendy czasowe.
| # | Pole | Opis |
|---|---|---|
| 23 | is_prospective |
Czy dotyczy planowanej (true) czy zrealizowanej (false) transakcji |
| 24 | eu_law_dimension |
Czy interpretacja odwołuje się do prawa UE |
| 25 | cross_border_element |
Czy występuje element transgraniczny |
| 26 | triggered_by_law_change |
Czy interpretacja dotyczy nowych/zmienionych przepisów |
| 27 | has_business_purpose |
Czy transakcja ma realny cel gospodarczy |
| 28 | form_over_substance_risk |
Czy zachodzi ryzyko formy nad treścią |
| 29 | consistent_with_prior |
Czy spójna z wcześniejszymi interpretacjami na ten temat |
| 30 | likely_court_challenge |
Czy sprawa prawdopodobnie trafi do sądu |
| 31 | needs_further_interpretation |
Czy wymaga dalszych wyjaśnień |
| 32 | regulatory_gap_identified |
Czy zidentyfikowano lukę regulacyjną |
| 33 | cites_case_law |
Czy organ powołuje się na orzecznictwo sądowe |
| 34 | cites_other_interpretations |
Czy organ powołuje się na inne interpretacje |
| 35 | gaar_relevant |
Czy klauzula GAAR mogła mieć zastosowanie |
| 36 | tp_relevant |
Czy dotyczy cen transferowych |
D. METRYKI NUMERYCZNE (8 pól)¶
Agregacja: avg, median, percentyle, histogram, korelacje, regresja.
| # | Pole | Typ | Opis | Zakres |
|---|---|---|---|---|
| 37 | question_count |
INT | Liczba pytań we wniosku | 1-20 |
| 38 | processing_time_days |
INT | Czas od wniosku do wydania (dni) | 1-365 |
| 39 | legal_references_count |
INT | Liczba cytowanych przepisów | 0-100 |
| 40 | text_length_chars |
INT | Długość pełnego tekstu interpretacji | 1000-500000 |
| 41 | argumentation_chain_length |
INT | Liczba kroków w łańcuchu rozumowania organu | 1-20 |
| 42 | disagreement_points_count |
INT | Liczba punktów rozbieżności wnioskodawca vs organ | 0-15 |
| 43 | reasoning_gaps_count |
INT | Liczba luk w argumentacji organu | 0-10 |
| 44 | implicit_assumptions_count |
INT | Liczba nieuzasadnionych założeń | 0-10 |
E. SKALE (SCORE 1-5) (4 pola)¶
Agregacja: avg, median, rozkład, korelacje, ranking.
| # | Pole | Opis | Skala |
|---|---|---|---|
| 45 | legal_certainty_score |
Przewidywalność wyniku (jasność przepisu × spójność orzecznictwa × jednoznaczność stanu faktycznego) | 1=skrajnie niepewne, 5=oczywiste |
| 46 | compliance_complexity_score |
Złożoność zastosowania się do interpretacji w praktyce | 1=proste, 5=bardzo skomplikowane |
| 47 | argumentation_quality_score |
Jakość argumentacji organu (kompletność, logiczność, brak luk) | 1=słaba, 5=wzorcowa |
| 48 | economic_significance_score |
Znaczenie ekonomiczne rozstrzygnięcia | 1=marginalne, 5=systemowe |
F. MULTI-LABEL ENUM (3 pola)¶
Agregacja: częstości poszczególnych wartości, co-occurrence matrix, multi-label classification.
| # | Pole | Typ | Wartości dozwolone | Opis |
|---|---|---|---|---|
| 49 | interpretation_methods |
ENUM_ARRAY | jezykowa / celowosciowa / systemowa / historyczna / prounijna / prokonstytucyjna / funkcjonalna / autonomiczna |
Metody wykładni zastosowane przez organ |
| 50 | anti_avoidance_clauses |
ENUM_ARRAY | GAAR / SAAR / CFC / TP / WHT_beneficial_owner / thin_cap / exit_tax / brak |
Klauzule antyabuzywne mające zastosowanie |
| 51 | documentation_requirements |
ENUM_ARRAY | ewidencja_vat / jpk / dokumentacja_tp / ewidencja_przebiegu / oswiadczenie / certyfikat_rezydencji / faktura / umowa / opinia_bieglego / wycena / brak_specjalnych |
Wymagania dokumentacyjne wynikające z interpretacji |
G. KEYWORDS — listy z otwartego słownika (4 pola)¶
Agregacja: word frequency, TF-IDF, topic modeling, co-occurrence.
| # | Pole | Typ | Opis |
|---|---|---|---|
| 52 | keywords |
KEYWORDS (5-15) | Słowa kluczowe w j. polskim |
| 53 | legal_concepts |
KEYWORDS (3-10) | Pojęcia prawne (np. "miejsce świadczenia usług") |
| 54 | foreign_jurisdictions |
KEYWORDS (0-10) | Kraje, których prawo podatkowe jest istotne |
| 55 | substance_indicators |
KEYWORDS (0-10) | Wskaźniki substancji ekonomicznej (np. "pracownicy", "biuro", "zarząd") |
H. REFERENCJE — identyfikatory do budowania grafów (5 pól)¶
Agregacja: citation networks, PageRank, frequency ranking, co-citation analysis.
| # | Pole | Typ | Format elementu | Opis |
|---|---|---|---|---|
| 56 | legal_references |
ID_REF_ARRAY | {act, article, paragraph} |
Cytowane przepisy krajowe |
| 57 | eu_directives_cited |
ID_REF_ARRAY | {directive_number, article} |
Cytowane dyrektywy/rozporządzenia UE |
| 58 | tax_treaties_cited |
ID_REF_ARRAY | {country, article} |
Cytowane umowy o unikaniu podwójnego opodatkowania |
| 59 | cited_case_law_signatures |
ID_REF_ARRAY | {court, signature, date} |
Sygnatury cytowanych orzeczeń |
| 60 | cited_interpretations |
ID_REF_ARRAY | {signature} |
Sygnatury cytowanych innych interpretacji |
I. TEKST OTWARTY (11 pól)¶
Agregacja wymaga NLP: embeddings, clustering, topic modeling, NER, similarity. Każde pole ma companion enum (sekcja B) do natychmiastowej agregacji.
| # | Pole | Companion enum | Opis |
|---|---|---|---|
| 61 | title |
(case_subject_category) |
Tytuł opisowy (max 200 znaków) |
| 62 | summary |
(case_subject_category, decision_type) |
Streszczenie 3-5 zdań |
| 63 | thesis |
(case_subject_category, primary_legal_act) |
Teza interpretacyjna (1-3 zdań) |
| 64 | factual_state |
(applicant_industry, applicant_type, transaction_type) |
Pełna narracja o stanie faktycznym |
| 65 | legal_state |
(primary_legal_act, tax_type) |
Podstawa prawna z artykułami |
| 66 | applicant_position |
(position_type) |
Stanowisko wnioskodawcy |
| 67 | authority_position |
(decision_type) |
Stanowisko organu |
| 68 | decision_summary |
(decision_type, fiscal_impact_direction) |
Skrót rozstrzygnięcia (2-3 zdań) |
| 69 | legal_effect |
(fiscal_impact_direction) |
Praktyczny skutek prawny |
| 70 | ambiguous_provision |
(ambiguity_type, primary_legal_act) |
Konkretny przepis powodujący wątpliwość |
| 71 | questions_text |
(question_count, case_subject_category) |
Pełna treść pytań wnioskodawcy |
J. POLA STRUKTURALNE — pozostające jako JSON (2 pola)¶
Zbyt złożone na flat kolumny, ale z wyciągniętymi agregatami (sekcje C, D, E).
| # | Pole | Wyciągnięte agregaty | Opis |
|---|---|---|---|
| 72 | argumentation_graph |
→ argumentation_chain_length, reasoning_gaps_count, argumentation_quality_score |
Pełny graf argumentacji: {premises: [], intermediate_conclusions: [], final_conclusion, chain: []} |
| 73 | quantitative_thresholds |
→ economic_significance_score |
[{threshold_type, value, currency, context}] — progi, limity, stawki |
Kontrolowane słowniki — pełne definicje¶
case_subject_category — taksonomia tematyczna (21 kategorii)¶
| Wartość | Zakres tematyczny | Typowe pytania |
|---|---|---|
koszty_uzyskania_przychodow |
Art. 15/22 CIT/PIT | Czy wydatek stanowi KUP? |
przychod_moment_powstania |
Art. 12/14 CIT/PIT | Kiedy powstaje przychód? |
zwolnienie_podatkowe |
Art. 17/21 CIT/PIT, art. 43 VAT | Czy przysługuje zwolnienie? |
stawka_podatku |
Art. 41/stawki VAT | Jaka stawka ma zastosowanie? |
odliczenie_vat |
Art. 86-91 VAT | Czy przysługuje odliczenie VAT naliczonego? |
miejsce_swiadczenia |
Art. 28a-28o VAT | Gdzie opodatkować usługę/dostawę? |
podstawa_opodatkowania |
Art. 29a VAT, art. 12 CIT | Co wchodzi do podstawy opodatkowania? |
obowiazek_podatkowy |
Art. 19a VAT | Kiedy powstaje obowiązek podatkowy? |
ceny_transferowe |
Art. 11a-11t CIT | Ceny transferowe, dokumentacja TP |
amortyzacja |
Art. 16a-16m CIT | Zasady amortyzacji środków trwałych |
reprezentacja_reklama |
Art. 16 ust. 1 pkt 28 CIT | Kwalifikacja wydatków na reprezentację |
daniny_publiczne |
Ordynacja podatkowa | Kwestie proceduralne, przedawnienie |
zabezpieczenie_spoleczne |
Ustawa o SUS | Składki ZUS, oskładkowanie |
dzialalnosc_nierejestrowana |
Art. 5 Prawo przedsiębiorców | Opodatkowanie drobnej sprzedaży |
kryptoaktywa |
Art. 17 ust. 1f PIT | Opodatkowanie kryptowalut |
ip_box |
Art. 24d CIT / 30ca PIT | Preferencja IP Box 5% |
ulga_badawczo_rozwojowa |
Art. 18d CIT | Ulga B+R |
estonski_cit |
Art. 28c-28t CIT | Ryczałt od dochodów spółek |
ryczalt_najem |
Art. 6 ust. 1a ryczałtu | Ryczałt od najmu prywatnego |
split_payment |
Art. 108a VAT | Mechanizm podzielonej płatności |
inne |
— | Pozostałe tematy |
applicant_industry — taksonomia branżowa (19 kategorii)¶
Oparta na PKD 2007 (sekcje), uproszczona do granularności przydatnej w analizie podatkowej:
| Wartość | Sekcje PKD | Przykłady podmiotów |
|---|---|---|
IT_software |
J (62, 63) | Software house, SaaS, freelancer programista |
e_commerce |
G (47.91) | Sklep internetowy, marketplace, dropshipping |
finanse_bankowosc |
K (64-66) | Bank, ubezpieczyciel, fundusz, fintech |
nieruchomosci |
L (68) | Deweloper, zarządca, pośrednik, najem |
budownictwo |
F (41-43) | Firma budowlana, instalacyjna, remontowa |
produkcja |
C (10-33) | Producent, przetwórca, montażownia |
transport_logistyka |
H (49-53) | Przewoźnik, spedytor, magazyn, kurier |
handel_detaliczny |
G (47) | Sklep stacjonarny, sieć handlowa |
handel_hurtowy |
G (46) | Dystrybutor, hurtownia |
uslugi_profesjonalne |
M (69-75) | Kancelaria, doradztwo, architektura, audyt |
zdrowie_farmacja |
Q (86), C (21) | Szpital, przychodnia, apteka, producent leków |
energia |
D (35), B (06) | Elektrownia, OZE, obrót energią |
rolnictwo |
A (01-03) | Gospodarstwo rolne, rybołówstwo |
gastronomia_hotelarstwo |
I (55-56) | Hotel, restauracja, catering |
media_reklama |
J (58-60), M (73) | Wydawnictwo, radio/TV, agencja reklamowa |
edukacja |
P (85) | Szkoła, uczelnia, centrum szkoleniowe |
telekomunikacja |
J (61) | Operator telekomunikacyjny, ISP |
gornictwo |
B (05-09) | Kopalnia, wydobycie |
inne |
— | Pozostałe |
trigger_event — taksonomia zdarzeń wyzwalających (11 kategorii)¶
| Wartość | Typowy kontekst |
|---|---|
nowa_transakcja |
Wnioskodawca planuje lub realizuje nowy typ transakcji |
zmiana_przepisow |
Weszła w życie nowelizacja ustawy podatkowej |
planowanie_podatkowe |
Optymalizacja struktury podatkowej |
reorganizacja |
Połączenie, podział, przekształcenie spółki |
kontrola_podatkowa |
W trakcie lub po kontroli/postępowaniu |
spor_z_organem |
Rozbieżne stanowisko US/UCS |
poczatek_dzialalnosci |
Zakładanie nowej firmy, pierwsze rozliczenie |
zmiana_formy_opodatkowania |
Przejście np. ze skali na liniowy, na estoński CIT |
transakcja_miedzynarodowa |
Nowy kontrahent zagraniczny, ekspansja |
otrzymanie_interpretacji_negatywnej |
Zaskarżenie wcześniejszej negatywnej interpretacji |
inne |
Pozostałe |
Instrukcje ekstrakcji¶
Zasady ogólne¶
- Ekstraktuj WYŁĄCZNIE z tekstu dokumentu
- Język: polski
- Daty: ISO 8601 (YYYY-MM-DD)
- Puste pola:
""(string),[](array),null(object),0(int),false(bool) - ENUM: TYLKO wartości z listy,
inne/brak_danychgdy żadna nie pasuje
Reguły mapowania na enum¶
tax_type → szukaj w tytule, słowach kluczowych, cytowanych ustawach:
- "podatku dochodowego od osób fizycznych" →
PIT - "podatku dochodowego od osób prawnych" →
CIT - "podatku od towarów i usług" →
VAT - "podatku od czynności cywilnoprawnych" →
PCC
applicant_industry → dedukuj ze stanu faktycznego:
- "prowadzi działalność w zakresie tworzenia oprogramowania" →
IT_software - "sprzedaje towary za pośrednictwem platformy internetowej" →
e_commerce - "jest spółką deweloperską" →
nieruchomosci
trigger_event → dedukuj z kontekstu wniosku:
- "w związku ze zmianą ustawy od dnia..." →
zmiana_przepisow - "zamierza zawrzeć umowę..." →
nowa_transakcja - "w trakcie prowadzonej kontroli..." →
kontrola_podatkowa
case_subject_category → klasyfikuj na podstawie głównego pytania wnioskodawcy:
- "czy wydatek na X stanowi koszt uzyskania przychodu" →
koszty_uzyskania_przychodow - "czy usługa podlega opodatkowaniu VAT w Polsce" →
miejsce_swiadczenia - "czy przysługuje prawo do odliczenia VAT naliczonego" →
odliczenie_vat
tax_planning_aggressiveness → oceniaj na podstawie dystansu między literalnym a proponowanym rozumieniem:
- typowe pytanie o prawidłowe zastosowanie →
konserwatywne - niestandardowa kwalifikacja w ramach przepisu →
umiarkowane - wyraźnie korzystna wykładnia sprzeczna z celem przepisu →
agresywne - na granicy obejścia prawa →
graniczne
Walidacja¶
- Każde pole ENUM używa TYLKO wartości z listy
tax_subtypejest spójny ztax_type- Pola BOOL: wyłącznie
true/false, nienull - Pola INT: nieujemne, w zdefiniowanym zakresie
interpretation_methodsnie może być puste — minimumjezykowaquestion_countmusi odpowiadać faktycznej liczbie pytań wquestions_textdate_issued≥date_received(jeśli oba dostępne)