Schemat do appinfo do określania informacji o relacjach - doswiadczalny - propozycja - DRAFT
@2015-11-19 modelowa struktura obietkow generowanych przez algorytm tworzenia mapy przetwarzania obiektow
Struktura do wstawiania do appinfo w schematach XSD w miejscu dowiązania relacji do innej tabeli. Z reguły w relacjach 1-1 w kolumnie tabeli lokalnej pojawiał się znacznik klucza tabely zdalnej.
W przypadku stworzenia relacji do tabeli zdalnej nie jest możliwe wprowadzenie nazwy kolumny, dla tego należy w tym polu wprowadzić nazwę kolumny, w ramach której dana relacja będzie prowadzona. W danej kolumnie silnik powinien trzymać aktualne dane relacji, mogą być one "cache" oraz obsługiwane przez triggery.
Kazdy element ktory ma sluzyc przeszukiwaniu/filtrowaniu w glab powinien miec ten atrybut :
W przypadku checi podmiany elementu w jakims complexType - nalezy wlaczyc te atrybuty w elementach:
complexType, sequence, element . Ostatni będzie podmieniany, ale to zalezy od innego atrybutu.
Jest to unikalny numer elementu dla rekordu zmiany.
Ostatni wezel bedzie miec powtorzony ten numer w polu @change_optimize_id_root
Kazdy element ktory ma sluzyc przeszukiwaniu/filtrowaniu w glab powinien miec ten atrybut :
W przypadku checi podmiany elementu w jakims complexType - nalezy wlaczyc te atrybuty w elementach:
complexType, sequence, element . Ostatni będzie podmieniany, ale to zalezy od innego atrybutu.
Po tym atrybucie bedzie odnajdywany odpowiedni element w drzewie docelowym. Ten atrybut dziala w parze z replace_attribute_value, ktory mowi o poszukiwanej wartosci tego atrybutu w drzewie przeszukiwanym. Nasz element zmieniany moze nie posiadac takiego atrybutu.
W przypadku checi podmiany elementu w complexType o nazwie @name='EMPLOYEE_TYPE' , nalezy w tym atrybucie podac jego wartosc:
system_cache__appinfo:replace_attribute_value="EMPLOYEE_TYPE"
Kazdy element ktory ma sluzyc przeszukiwaniu/filtrowaniu w glab powinien miec ten atrybut :
W przypadku checi podmiany elementu w jakims complexType - nalezy wlaczyc te atrybuty w elementach:
complexType, sequence, element . Ostatni będzie podmieniany, ale to zalezy od innego atrybutu.
Jest to numer item elementu zmiany, jaki ma byc wprowadzony do glownego drzewa.
Obiekt ze struktura podrzedna, wskazujacy na kawalek struktury, ktory bedzie podmieniany w innym obiekcie. Uzywany przy modyfikacji schematu, definiuje sie complexType/sequence/element - wstawia sie specjalne znaczniki , dzieki czemu w duzym schemacie dany complexType/sequence/element o takich samych nazwach moze byc podmieniony z tym.
Walidacja schematu nie dziala prawidlowo dla tego obiektu - wymagane jest redefine XSD_Schema w celu wlaczenia dodatkowych atrybutow. complexType zrobiony dla lepszej dokumentacji transformacji XSL uzywajacych tych struktur w silniku.
przyklad:
xs:complexType name="ACCESS_REQUESTS" system_cache__appinfo:rel_key="@name" system_cache__appinfo:dig_recurse="1"
Nalezy wprowadzic glowny klucz nazwy do odnalezienia odpowiednika elementu w drzewie edytowanym
Obiekt powsatly na podstawie change za pomoca transformacji xsl o nazwie template mode="system_cache__appinfo:change_optimize_id , dodane ma atrybuty niezbedne do przeszukania w drzewie
Jest to numer item elementu zmiany, jaki ma byc wprowadzony do glownego drzewa.
przyklad:
xs:complexType name="ACCESS_REQUESTS" system_cache__appinfo:rel_key="@name" system_cache__appinfo:dig_recurse="1"
Nalezy wprowadzic glowny klucz nazwy do odnalezienia odpowiednika elementu w drzewie edytowanym
Jest to unikalny numer elementu dla rekordu zmiany.
Ostatni wezel bedzie miec powtorzony ten numer w polu @change_optimize_id_root
tak samo atrybuty dostepne @read_key_value lub @evaluate_key_value
tak samo atrybuty dostepne @read_key_value lub @evaluate_key_value
TODO obiekt do gromadzenia danych komunikacji przez GUI do przygotowania transakcji do zapisu danych/edycji - np. uzytkownik wybral 10 urzadzen, ktore chce pobrac do jakiejs lokalizacji?
Do usuniecia - jest to dlugosc w bajtach podstawy restrykcji w buildCOmplexType.xsl
zwlaszcza przy 477 w przypadku kiedy na ref nastepuje zapetlenie - zawiera nazwe wyzwalanego obiektu razem z prefixem
do uzycia zwlasczcza w p5_tr_map:loop - zawiera nazwe zapetlajacego sie elementu z prefixem. Todo nie koniecznie loop wskazuje na wlasciwa instancje
Tabela wykryta gdzie jest przechowywana główna instancja
zawartosc nie zawsze oznacza, ze typ odwolania jest referencja - moze to byc uzycie complexType
W przypadku kiedy relacja do obcego obiektu nie wynika z zastosowania typu 477 (referencja), zamiast tego uzyty jest typ ComplexType nazwany, to wlaczany jest ten atrybut z ta zawartoscia.
Element uzyty np w IN7_DZIENNIK_KORESP/ID_PROJECT w celu opisania relacji cache do innego obiektu (opisany od drugiej strony)
np default_db:IN7_MK_BAZA_DYSTRYBUCJI/IN7_MK_BAZA_DYSTRYBUCJI/ID
np ="ID" dla wskazania, jakie pole jest lokalnie podstawa do zbudowania relacji, np w przypadku URZADZENIE do URZADZENIE bedzie to ID, ktore ma sie pojawic w PARENT_ID
${basedir}/config/NamespaceBinding.xml
Describe which prefix to use to retrieve objects from api (used temporary - should use namespace URL)
used in root schema element to use in grouping anc classyfing objects in output styles templates
To handle some group in styles/output/object - e.g. Infrastructure