CZ20003910A3 - Způsob konverze stromově strukturovaných dat - Google Patents
Způsob konverze stromově strukturovaných dat Download PDFInfo
- Publication number
- CZ20003910A3 CZ20003910A3 CZ20003910A CZ20003910A CZ20003910A3 CZ 20003910 A3 CZ20003910 A3 CZ 20003910A3 CZ 20003910 A CZ20003910 A CZ 20003910A CZ 20003910 A CZ20003910 A CZ 20003910A CZ 20003910 A3 CZ20003910 A3 CZ 20003910A3
- Authority
- CZ
- Czechia
- Prior art keywords
- tree
- node
- target
- source
- generating
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
- Stored Programmes (AREA)
Description
Oblast techniky
Vynález se týká způsobu konverze stromově strukturovaných dat libovolného zdrojového objektového modelu do volně definovatelného cílového objektového modelu, podle úvodní části patentového nároku 1.
Dosavadní stav techniky
V mnoha oblastech zpracování dat je nutné data, vytvořená a spravovaná nějakým systémem, dát k dispozicí jinému systému k dalšímu zpracování. Toto se může uskutečnit výměnou dat v určitém datovém formátu, např. na způsob ASCII-souborů. ASCII-soubory ale často podléhají změnám. Tyto postihují méně „hrubou syntaktickou výstavbu souboru, než častěji obsahy. Třídy objektů nebo jednotlivé atributy se přidávají nebo chybí, rozsahy hodnot pro atributy se mění, atributy se opět nalézají v jiných třídách objektů. Data se doposud konvertovala do potřebného cílového formátu s pomocí relativně nepružného softwarového řešení. Všechny změny formátu vstupních dat se musely přetáhnout ve zdrojovém kódu a následovně se musela vytvořit nová verze.
Aby se příště mohlo na tyto změny reagovat rychle a pružně, má předložený vynález za úkol, navrhnout způsob řízený pravidly ke konverzi stromově strukturovaných dat, u kterého se mohou zachycovat změny na zdrojových nebo
80750 Í80750al • « · fc · fcfcfc fcfcfcfc · · * fc fc fcfc fcfcfcfc fcfc · fcfcfcfc fcfc fcfc fcfc fcfc *·· cílových formátech pomocí jednoduchých změn pravidel.
Tento úkol se řeší charakteristickými znaky patentového nároku 1,
Podstata vynálezu
Vynález je založen na myšlence, „nenalít pevně pravidla konverze do programového kódu, nýbrž vytvořit regulační mechanizmus, kterým se řídí pružný konvertor v době běhu.
Výhoda, dosažená vynálezem, spočívá při konverzi dat v tom, že se nyní může rychle a pružně reagovat na změny formátu vstupních dat, protože se nepoužívá žádný pevný program, nýbrž přizpůsobitelný regulační mechanizmus.
Vstupní data se přednostně předběžně připravují syntaktickým analyzátorem a v pevném formátu se dávají k dispozici v souboru. Konvertovaná data se rovněž dávají k dispozici v pevném formátu v souboru pro následné zpracování.
Ke zjištění kořenu cílového stromu a kořenu zdrojového stromu se vyznačuje právě ta třída objektu, která leží v hierarchii tříd výše, než všechny ostatní třídy objektů. Každý uzel cílového stromu se vytváří jenom tehdy, když se nechá najít uzel zdrojového stromu, který vyhovuje určitým podmínkám, stanoveným v pravidlu generování. Nalezený uzel zdrojového stromu je potom generující instance pro uzel cílového stromu.
60750(60750a) • to··* ···· * • · to to · to ·· t • •to· a* ·· ·· ·· ··
Pro konstrukci nového dílčího stromu pod pozorovaným uzlem cílového stromu se podle vynálezu musí pozorovat jenom dílčí strom pod generující instancí, přiřazenou tomuto uzlu cílového stromu, a cesta od kořenu k této instanci. Pro každou třídu objektu cílového stromu je přitom definováno pravidlo generování.
Na základě pravidla generování se zdrojový strom v okolí generující instance prohledává podle instancí určité třídy objektů, které mají splňovat speciální podmínky, a při úspěšném vyhledání se v cílovém stromu vytváří nový uzel, a instance zdrojového stromu se stává příslušnou generující instancí uzlu cílového stromu.
Pravidla k výpočtu atributů, patřících k nově vytvářeným uzlům {objektům}, se přednostně skládají z funkcí, podle kterých se z atributů různých objektů zdrojového stromu počítají atributy nového uzlu cílového stromu.
Aby se umožnila regulovaná konverze, dávají se v regulačním mechanizmu k dispozici pro zdrojový a cílový strom přípustné třídy objektů, přípustní následníci jednotlivých tříd objektů a atributy, příslušející každé třídě objektů (Containment).
Přehled obrázků na výkresech
Vynález bude blíže vysvětlen prostřednictvím konkrétních příkladů provedení znázorněných na výkresech, na kterých představuje
80750 (S0750a) _ _ · · · * « · · · ♦ · • ·ΦΦ ·· ·· *· ·· ·· obr. 1 vsazení konvertoru do celkového systému;
obr. 2 struktura konvertoru;
obr. 3 generující instance uzlu K cílového stromu;
obr. 4 vytvoření následníka uzlu cílového stromu;
obr. 5 omezení na dílčí stromy;
obr. 6 vložení nové třídy objektů jako kořenu;
obr. 7 znázornění Containment regulováním;
obr. 8 vstupní body pro prohledávání instancí;
obr. 9 stanovení oblastí prohledávání;
obr. 10 vytváření jenom jednoho nebo několika následníků;
obr. 11 pravidla generování instancí v regulačním mechanizmu;
obr. 12 pravidla výpočtu atributů v regulačním mechanizmu;
obr. 13 vytvářet kořen cílového stromu;
obr. 14 vypočítat atributy nové instance;
obr, 15 vytvářet následníka nové instance;
80750(80750a) « · · «* ·«·* ·· obr. 16 označení nové instance jako „stará”;
Příklady provedení vynálezu
V tomto konkrétním případu se vychází z konverze dat, jak se uskutečňuje v moderních digitálních radiotelefonních sítích, aby např. data, která jsou k dispozici v Operation a Management Center (OMC), dala k dispozici Telekommunikation Management Network (TMN) - platformě. Ve smyslu zavedení TMN-platformy 2 u provozovatelů mobilních radiotelefonních sítí existuje úkol, dát k dispozici konfigurační data základní stanice pro platformově interní MIB (Management Information Base) 2- Na základě nedostatečných alternativ se k tomu přistupuje na ASCII-soubory, které se nechají získat u všech systémových technik základních sranic nástroji, specifickými pro výrobce, z OMC - počítačů 4. Obrázek 1 ukazuje vložení konvertoru 1 do takového systému.
Obrázek 2 ukazuje konstrukci konvertoru K Aby mohl konvertor vykonávat svou práci, vstupní data 5 (OMP-data) se předběžně zpracovávají a jsou k dispozici v pevně daném formátu v souboru _6 (předřazený soubor) . Tuto úlohu přebírá v tomto případě algoritmus pro syntaktickou analýzu (syntaktický analyzátor Ί) . Tento předřazený soubor se pro jiné požadavky může lehce nahradit jiným modulem. Konvertor 1_ opět vytváří v pevně daném formátu soubor 8_, který je potom k dispozici pro následné zpracování (Eackend). Zde se mimoto zjišťují rozdíly od dat, generovaných předchozí den (Delta - generování 9) a odchylky se posílají jako CMISzprávy (Common Management Information Services-Format) na TMN-platformu 2, kde se zpracovávají do MIB-datového souboru. Také Backend se může vyměnit za jiné účely.
80750 Í80750al « · 4
4«4
44«« «4
Princip funkce
Způsob funkce konvertoru _1 se odvozuje z následujících podstatných pozorování:
Podle obrázku 3 spočívá rozhodnutí, zda se v cílovém stromě 10 musí vytvářet instance (uzly) 11, na vyhodnocení relativně omezené oblasti zdrojového stromu 12. Přitom se nechá vždy určit instance 13 zdrojového stromu 12, dále označovaná jako „generující instance El, jejíž existence se pozoruje jako základní předpoklad k vytváření nové instance 11, uzlu K.
Jak je znázorněno na obrázku 4, nechají se stanovit všeobecně platná pravidla, která se mohou vyhodnocovat v okolí generující instance El 13 uzlu a nezávisle na konkrétní poloze ve zdrojovém stromu 12, aby se mohl vytvářet následník/následníci A 14 uzlu K 11. V příkladu to znamená: vytvoř uzel A 14, když ve zdrojovém stromu 12 uzel B 15 a C 16 jsou následníci El 13.
Pro konstruování nového dílčího stromu 17 pod uzlem 11 v cílovém stromu 10 stačí prohlížení dílčího stromu 18 generující instance 13 tohoto uzlu 11 v zdrojovém stromu 12. Toto je objasněno na obrázku 5. Na tomto místě je třeba zmínit, že pro případně se vyskytující zvláštní případy se musí dávat k dispozici funkce, které mohou tyto principy porušovat a umožňují navigování a vyhodnocování podmínek v celkovém zdrojovém stromu 12.
Regulační množiny
Jak již bylo zmíněno, nemá konvertor 1_ obsahovat „tvrdě kódovanou inteligenci k vytvoření cílového stromu 10 ze
80750 Í80750a) • · «·« · ·« «· ·* zdrojového stromu 12, nýbrž se v době běhu zjišťují a používají předpisy pro konverzi, vhodné pro příslušnou situaci. Tento regulační mechanizmus se v uvedeném příkladu ukládá a interpretuje v ASCII-souboru. Ostatní varianty, jako např. ukládání pravidel v databázi, jsou zde myslitelné.
Pro konstrukci cílového stromu 10 z daného zdrojového stromu 12 potřebuje konvertor pravidla, ze kterých může získat následující informace:
1. Které následníky může mít instance cílového stromu
2. Jaké podmínky musí být splněny, aby se v cílovém stromu vytvářela nová instance jako následník existující
3. Jak vypočítám atributy nové instance cílového stromu
Dodatečně se jeví smysluplné, přezkoušet na správnost pravidla generování instancí a pravidla výpočtu atributů. K tomu jsou zapotřebí následující informace, které se rovněž mohou lehce uložit v regulačním mechanizmu:
1. Jaké následníky může mít instance zdrojového stromu
2. Jaké atributy obsahuje každá instance zdrojového a cílového stromu
3. Jaké rozsahy hodnot platí pro hodnoty atributů
V dalším se blíže popisuje konstrukce regulačního mechanizmu a vysvětluje se, které informace se získávají z příslušných typů regulace. Tyto informace se potom používají popsaným algoritmem způsobu ke konverzi.
Základně důležité pro provedení způsobu a pro to, že se pravidla regulačního mechanizmu vůbec mohou používat, je
80750 f80750a1 • 99 • 9
9
9 9 9 •••9 99 99 99 konfigurace datových struktur, se kterými se vstupní data reprezentují na způsob zdrojového stromu a výstupní data na způsob cílového stromu. Proto se v dalším nejdříve přistupuje na požadavky na datové struktury.
Požadavky na datové struktury
Jak již bylo zmíněno, zdrojová a cílová data mají existovat na způsob takzvaných „stromů. K tomu se mohou používat datové struktury, v EDV-technice obecně známé. Aby se na těchto datových strukturách mohla používat pravidla regulačního mechanizmu a mohl se provádět základní algoritmus ke konstrukci cílového stromu, je třeba datové struktury koncipovat tak, že se určité informace mohou zjišťovat v každém okamžiku (a pokud možno účinně) .
Tyto informace jsou:
předchůdce každého uzlu stromu (pokud existuje) následníci každého uzlu (pokud existují) třída objektu, ke které patří každý uzel konkrétní instance, která reprezentuje každý uzel konkrétní hodnoty všech atributů každého uzlu cesta od kořenu ke každému uzlu dílčí strom pod každým uzlem příslušnost pozorovaného uzlu ke zdrojovému nebo k cílovému stromu „generující instance pro každý uzel cílového stromu
Na konkrétních zdrojových a cílových stromech se nyní s pomocí příslušných vyhledávacích algoritmů mohou zjistit množiny hodnot, na kterých se vypočítává už řada základních funkcí konvertoru:
Množiny hodnot jsou:
80750 (80750a) • · ♦ 4 · · * · β 4 · · 4 4 · · 4
4 4 « 4 · 4 44 4
4444 44 44 44 44 444
KQ množina všech uzlů zdrojového stromu (vstup)
Kz množina všech uzlů cílového stromu (generující výstup)
K = KQ u K2 množina všech uzlů stromů
Pro množinu M má Pot(M) označovat příslušnou množinu mocnin,
Poté se mohou vypočítat následující základní funkce:
Každý uzel stromu patří určité třídě objektů. Toto zjišťuje funkce Obj
Obj: K KL
Pro každý uzel stromu zjišťuje Sub pod ním ležící dílčí strom
Sub: K -» Pot(K)
| Pro každý uzel k tomuto uzlu Path: K -> Pot(K) | stromu zjišťuje | Path cestu | od kořenu | |
| Pro každý uzel cílového instanci ve zdrojovém stromu Ei: K2 —> KQ | stromu | zjišťuje Ei | generuj ící | |
| Horní základní | funkce | se | realizuj i | j ednoduchým |
| prohledáváním stromů. | K tomu | se musí splnit | formulované |
požadavky na datové struktury.
Zavedení třídy „root (kořen)
80750 (80750a) i0— · · « · · · · · · · »········· «·· ·» ·* ·* *· ♦♦·
Aby se stanovil definovaný počátek pro vyhodnocení pravidel během konverze a vlastní algoritmus konverze, je nutné třídy objektů označit jako „kořen zdrojového a cílového stromu. Všechny ostatní třídy objektů musí být dosažitelné po cestě od kořenu a algoritmus začíná s vyhodnocením pravidel pro třídu kořenu cílového stromu. Jak je znázorněno na obrázku 6, realizuje se požadovaná struktura zde pomocí zavedení úplně nových tříd objektů, totiž Rz (R je pro Root) jako kořenu cílového stromu a RQ jako kořenu 19 zdrojového stromu. Třídy objektů, nejvyšší v hierarchii tříd, např. A a B, zdrojového popř. cílového stromu, se potom v regulačním mechanizmu stanovují jako následníci RQ popř. Rz.
Tento způsob jednání má k tomu vedlejší efekt, že několik, nejprve nezávislých zdrojových stromů se může zároveň konvertovat, zatím co se připojením na Re 19 spojují do nového zdrojového stromu 12.
Popis struktury zdrojového a cílového stromu
S pomocí pravidel této kategorie je možno popsat Containment-Tree 20 (obrázek 7) pro zdrojová a cílová data. Musí se nechat odečíst:
1. které třídy objektů se mohou/musí vyskytovat?
Tento požadavek se může realizovat pomocí seznamu, který obsahuje přípustné třídy 21 objektů, např. A, B, ... G. Třídy objektů, které se musí vyskytovat bezpodmínečně, (jako např. nová třída „root nebo původní kořen stromu), se označují jako „naléhavě potřebné.
2. které následníky, např. B, C může/musí mít každá třída objektů?
Ke každé třídě 21 objektů existuje seznam, ve kterém se
80750(80750a) • » · * * · • · · · · · · · · « · * · · · · · *··· *· ·· ·· · nechají odečíst její přípustní následníci. Teiké zde se mohou třídy objektů, jejichž nepřítomnost by znamenala výraznou chybu, označovat jako „naléhavě potřebné.
3. které atributy 22 může/musí obsahovat každá třída objektů?
Ke každé třídě 21 objektů existuje další seznam, ve kterém jsou zaznamenány příslušné atributy 22. Také zde je navržena možnost, označovat důležité atributy jako „naléhavě potřebné.
Z těchto pravidel (obrázek 7) se mohou pomocí příslušných vyhledávacích algoritmů odvodit množiny hodnot, ze kterých se již vypočítává řada základních funkcí konvertoru L·
Množiny hodnot jsou:
KLq množina všech tříd 21 objektů zdrojového stromu 12_
KLZ množina všech tříd 21 objektů cílového stromu
KL = KLquKLz množina všech tříd 21 objektů regulačního mechanizmu
ATq množina všech atributů 22. objektů 20 zdrojového stromu _12
ATZ množina všech atributů 22 objektů 21 cílového stromu 10
AT = ATqUATz množina všech atributů 22 objektů 21 regulačního mechanizmu
Dodatečně se zde může pomocí údaje rozsahů hodnot pro atributy 22 stanovit také následující množinu:
80750 (80750a) «44
4 4
4·· «4
VAL množina všech možných hodnot atributů
Poté se mohou vypočítat následující základní funkce:
Pro každou třídu 21 objektů zjišťuje funkce Nf množinu všech možných tříd následníků Nf: KL -> Pot (KLQ) uPot(KLz)
Pro množinu tříd 21 objektů zjišťuje Att množinu všech atributů 22, obsažených uvnitř
Att: Pot(KL) -> Pot(AT)
Výše uvedené základní funkce se mohou realizovat jednoduchým prohledáváním množin pravidel.
Pravidla generování instancí cílového stromu
Rozhodující úloha při konstrukci cílového stromu 10 spočívá v rozpoznání, kdy je možno vytvořit instanci 11 třídy objektů cílového stromu. K řešení rohoto problému slouží takzvaná pravidla generování, z čehož se musí udat přesně jedno pro každou třídu 21 objektů cílového stromu 10. Pro každou potenciální třídu následníků uz;lu 11 cílového stromu se potom vyhodnocuje příslušné pravidlo generování v „okolí generující instance 13 uzlu ve zdrojovém stromu 12 a tak se popř. vytvářejí nové cílové uzly 11 jako následníci původního. Pravidlo generování samo „prohledává zdrojový strom 12 v okolí generující instance 13 podle instance určité třídy 21 objektů, které mají splňovat speciální podmínky. Pokud je hledání úspěšné, vytváří se nový uzel 11 v cílovém stromu 10 a instance cílového stromu k příslušné generující instanci 13 cílového uzlu 11.
80750(80750a) k 0
0000 0·
0«
0
V pravidle generování jsou nutné různé údaje:
1. vstupní bod 23 pro vyhledávání (obrázek 8)
Jako vstupní bod se musí stanovit jeden z následujících uzlů zdrojového stromu:
- kořen zdrojového stromu
- generující instance 13
- jiný uzel na cestě od kořenu ke generující instanci
2. Typ vyhledávání (vyhledávací oblast, obrázek 9)
Musí se stanovit jedna z následujících vyhledávacích oblastí:
- prohledává se celý dílčí strom 24
- prohledává se určitá úroveň 25 pod vstupním bodem
3. Dodatečné podmínky
- zde se mohou udávat další podmínky, které má splňovat uzel zdrojového stromu, jako např. se vyznačovat určitými hodnotami atributů, nebo existence dodatečných instancí cílového stromu
4. Četnost použití (obrázek 10)
Pro četnost použití se musí zvolit jedna z následujících alternativ:
- vytvoř uzel cílového stromu pro každý aktivní záznam
- vytvoř jenom jeden uzel cílového stromu u prvního aktivního záznamu
Uzel 11 cílového uzlu se vytváří, jenom když se pro něj s pomocí příslušného pravidla generování nechá ve zdrojovém stromu najít generující instance 13.
80750 (80750a1 · 9 «99 9 ··· 99
Obrázek 11 má ještě jednou znázorňovat zápis v regulačním mechanizmu, potřebný pro zanesení pravidel generování instancí.
Se zavedením těchto pravidel obdržíme novou množinu hodnot a základní funkci:
Množina hodnot je:
ER množina všech pravidel generování v regulačním mechanizmu
Potom se může vypočítat následující základní funkce:
Pro každou třídu cílového stromu zjišťuje funkce Gen příslušné pravidlo generování
Gen: KLz —> ER
Také tato základní funkce se nechá realizovat „jednoduchým prohledáváním množin regulování. Přesný popis se zde proto neuskutečňuje.
Pravidlům generování se tak může rozumět jako funkcím, které pro určitou objektovou třídu zkoumají množinu uzlů zdrojového stromu a popř. zpět poskytují jednu z nich jako generující instanci pro novou instanci pozorované třídy objektů cílového stromu (tzn. nový uzel cílového stromu). Pokud se nenachází žádná generující instance, nevytváří se také žádný uzel cílového stromu.
er e ER er: KL2 x Pot (KQ) -> KQ
1580750 (80750a) * « · • 4 · fcfcfcfc ·«
Pravidla výpočtu pro atributy
Poté co se vytvořil objekt cílového stromu, musejí se nakonec ještě vypočítat atributy, v něm obsažené. K tomu se pro každý atribut udává vzorec. Tento vzorec obsahuje jako operátory běžné výpočetní operace a jako operandy konstanty, proměnné a hodnoty atributů zdrojového stromu. Přitom se může k atributům generující instance (která je k tomuto časovému okamžiku již pevně určena) jednoduše přistupovat podle jména. Atributy tohoto objektu ale vždy nestačí k výpočtu nové hodnoty. Je tedy třeba vytvořit možnost, mít přístup k atributům libovolných dalších objektů. K tomu se ke každé třídě objektů cílového stromu udává, které další instance cílového stromu mají „dát k dispozici své atributy k výpočtu vlastních hodnot atributů. Tyto instance zdrojového stromu se dále nazývají „výpočetní instance. Výpočetní instance se nalézají podobným způsobem, jako generující instance.
Vyhledávací pravidlo pro výpočetní instanci obsahuje následující údaje:
1. Vstupní bod pro vyhledávání
Jako vstupní bod se musí stanovit jeden z následujících uzlů zdrojového kmene:
- kořen zdrojového stromu
- generující instance
- další uzel na cestě od kořenu ke generující instanci
2. Typ vyhledávání
Musí se stanovit jedna z následujících oblastí vyhledávání
- celý dílčí strom
- určitá úroveň pod vstupním bodem
80750 (80750a) • 4 4
3. Dodatečné podmínky zde se mohou udávat další podmínky, které má splnit uzel zdrojového stromu, jako např. mít určité hodnoty atributů nebo existence dodatečných instancí cílového stromu {4. parametr z vyhledávání generující instance, četnost použití, zde odpadá. Vždy se volí první shoda).
Při stanovení pravidel vyhledávání k vyhledávání instancí výpočtu pro třídu cílového stromu obdrží každé pravidlo vyhledávání jméno, jednoznačné v třídě cílového stromu. Pokud by měly různé instance výpočtu obsahovat atributy stejného jména, může se potom atribut jednoznačně zvolit přes konstrukt <jméno instance výpočtu>.<jméno atributu>.
Obrázek 12 má ještě jednou znázornit zápisy v regulačním mechanizmu, potřebné pro zápis pravidel výpočtu atributů. Se zavedením těchto pravidel dostaneme novou množinu hodnot a další základní funkci:
Množina hodnot je:
AR množina všech pravidel pro výpočet atributů v regulačním mechanizmu
Potom se může vypočítat následující základní funkce:
Pro každý atribut uvnitř třídy objektu stanovuje Calc příslušný předpis výpočtu
Calc: AT z x KLz —> AR
80750 (80750a) • φ φ φ φ »
ΦΦΦ » φφ φφ φ
Jako všechny dosavadní základní funkce se také tato nechá realizovat „jednoduchým prohledáváním množin pravidel. Přesný popis se zde proto neuskutečňuje.
Pravidlům výpočtu atributů se může tedy rozumět jako funkcím, které z atributů různých objektů zdrojového kmenu vypočítají novou hodnotu.
ar s AR ar: Pot (Kz x AT2) -> VAL
Základní algoritmus
Nejdříve se ještě jednou provádějí základní funkce, které se potom používají u popisu základního postupu ke konstrukci cílového stromu. Způsob funkce těchto základních funkcí se už zde neuskutečňuje, protože jejich způsob práce byl vysvětlován již dříve.
Funkce pro regulační mechanizmus
Z daného, správně vybudovaného regulačního mechanizmu (kontroluje se přes Check-Routine) se mohou pomocí jednoduché funkce zjišťovat následující výsledky:
budiž
| M | množina |
| Pot (M) | příslušná množina mocnin |
| ER | množina všech pravidel generování v regulačním mechanizmu |
| AR | množina všech pravidel k výpočtu |
| atributů v regulačním mechanizmu | |
| KLQ | množina všech tříd objektů zdrojového |
80750 (80750a) • to to toto·· · * ·· to to to · «••to ·· ♦· ·♦ • to · • to · ·· ·♦·
KLZ
KL — KLqUKLz
ATq
ATz
AT = ATouATz
VAL stromu množina všech tříd objektů cílového stromu množina všech tříd objektů regulačního mechanizmu množina všech atributů objektů zdrojového stromu množina všech atributů objektů cílového stromu množina všech atributů objektů regulačního mechanizmu množina všech možných hodnot atributů
Pro každou třídu objektů zjišťuje funkce Nf množinu všech možných tříd následníků
Nf: KL -> Pot (KLe) uPot(KLz)
Pro každou třídu cílového stromu zjišťuje funkce Gen příslušné pravidlo generování
Gen: KL2 —ER
Pro množinu tříd objektů zjišťuje Att. množinu všech v něm obsažených atributů
Att: Pot(KL) -> Pot(AT)
Pro každý atribut uvnitř třídy objektů zjišťuje Calc příslušný předpis výpočtu
Calc: ATS x KLZ d AR
Funkce pro zdrojový a cílový strom
Ve správně konstruovaném stromu (zdrojový nebo cílový strom) se mohou lehce zjistit následující výsledky:
00750 (80750a) * · ··« · · · • · · · · **·· · ···· φ* ·· ·· · «ι· budiž
KQ množina všech uzlů zdrojového stromu (vstup
Ks množina všech uzlů cílového stromu (výstup, který je třeba generovat
K = KQ u Kz množina všech uzlů stromu
Každý uzel stromu patří určité třídě objektů. Toto zjišťuje funkce Obj
Obj : K -> KL
Pro každý uzel stromu zjišťuje Sub pod ním ležící dílčí strom
Sub: K -> Pot(K)
Pro každý uzel stromu zjišťuje Path cestu od kořenu k tomuto uzlu
Path: K -> Pot(K)
Pravidlo generování hledá v množině uzlů zdrojového stromu ten, který splňuje všechny podmínky a tím se má stát „generující instancí pro novou instanci třídy objektů cílového stromu. (Pokud se nenajde žádný vhodný uzel, nevytváří se žádná instance).
er e ER; er: KLZ x Pot(KQ) -» KQ
Pro každý uzel cílového stromu zjišťuje Ei generující instanci ve zdrojovém stromu
Ei: Kz —> Kq
Předpis výpočtu pro atributy zjišťuje z konkrétních hodnot atributů v uzlech stromu novou hodnotu
B0750 (80750a)
| - 20 | • «000 00·· 0 ···· 00 00 00 00 000 | ||
| ar e AR; | ar: Pot(K x AT) -> | VAL | |
| Konstrukce cílového stromu | |||
| S pomocí | výše uvedených | funkcí | se může nyní uvést |
| algoritmus, | který konstruuje | cílový | strom 10 s „root |
| začínajícím „ | úrovňovým způsobem” | shora | směrem dolů. |
| Budiž | |||
| Rz | kořen 26 cílového | stromu | 10 |
Rq kořen 19 zdrojového stromu 12
1. vytvoř kořen Rz 26 jako první „novou instanci” cílového stromu 10 a přiděl kořenu 26 jako „generující instanci” kořen 19 zdrojového stromu 12, Ei(Rz):=RQ; srovnej obrázek 13
| 2. | pro každou | „novou instanci” Iz 11 cílového stromi | 1 11 | |
| I. | vypočítej | hodnoty všech atributů od Iz | ϋ' | srovnej |
| obrázek 14 | ||||
| atributy z | Iz 11 se určují pomocí Att(Iz) | |||
| pro všechny a e Att(Iz) pomocí Calc(a, Iz) | určit | předpis |
výpočtu ar a použít na atributy cesty ke „generující instanci” 13 Path(Ei(Iz)) ve zdrojovém stromu 12 jakož i na již vypočítané atributy v cílovém stromu 10 Path(Iz) (další atributy, libovolně uložené ve zdrojovém stromu 12, se mohou najít a spojit se zvláštními funkcemi)
II. vytvoř všechny následníky 14 od Iz 11, srovnej obrázek 15 urči všechny možné třídy následníků cd Iz 11 pomocí Nf (Obj (Iz) ) pro všechny n e Nf(Obj(Iz) ) pomocí Gen(n) určit pravidlo generování er a použít, když je třeba:
80750 ÍS0750a1 « · · · · · ♦ · · ···· ·· · ·· ·· ·«« „generující instanci přidělit Ei(n):=er(n, Path(Ei(Iz, uSub (Ei (Iz) ) ) (zvláštními funkcemi se mohou také zde zjišťovat „generující instance, které jsou uložené libovolně ve zdrojovém stromu) n se stane „novou instancí
IZ 11 se stane „starou instancí, (obrázek 16)
Algoritmus je uzavřen, když všechny uzdy 11, 14 atd.
cílového stromu jsou „staré uzly. Tzn., že se už nemohou vytvářet žádné „nové uzly jako následníci již vytvořených instancí cílového stromu a všechny atributy jsou vypočítány.
S konstrukcí cílového stromu 10 je ukončena hlavní práce konvertoru _!· Vytvořený cílový strom 10 je možné ještě vhodným způsobem dát k dispozici Backend konvertoru k dalšímu zpracování. V realizovaném řešení to znamená k Delta - generování s daty předchozího dne a k přenosu rozdílu na TMN-platformu ve tvaru jednotlivých sdělení.
Claims (10)
- PATENTOVÉ NÁROKY1. Způsob konverze stromově strukturovaných dat libovolného zdrojového objektového modelu, daných k dispozici prvním zařízením pro zpracování dat, na data volně definovatelného cílového objektového modelu, které se nechají číst druhým zařízením pro zpracování dat, pomocí nezávislého regulačního systému, přičemž zdrojový a cílový strom se skládají z objektů jedné nebo několika tříd objektů, které obsahují vždy jeden nebo několik atributů, vyznačující se následujícími krokya) vytvoření kořenu Rz cílového stromu a označení kořenu zdrojového stromu jako generující instance pro kořen cílového stromu;b) kořen cílového stromu označit jako „nový;c) zjištěni všech pravidel k vyhledávání podle výpočetních instancí zdrojového stromu, která jsou zapotřebí k výpočtu atributů nového uzlu cílového stromu (pravidla okolí);d) stanovení výpočetních instancí použitím pravidel okolí na generující instanci uzlu zdrojového stromu;e) zjištění všech pravidel, patřících nově vytvořenému uzlu cílového stromu, k výpočtu atributů tohoto uzlu;f) zjištění hodnot atributů nového uzlu cílového stromu použitím pravidel výpočtu atributů na výpočetní instance a na generující instanci;g) zjištění všech pravidel ke generování následníků uzlu cílového stromu;h) generování následníků použitím pravidel generování na generující instanci uzlu zdrojového stromu, přitom označit příslušný uzel zdrojového stromu jako16 80750 (80750a) • · 4 0* 4·· • 0000 0·00 0 • ·0 400· · 0 0004* 4· 04 00 00 40« generující instanci pro uzel následníka;i) nový uzel cílového stromu označit ;iako „starý a všechny jeho následníky označit jako „nový;j) zvolit nový uzel cílového stromu a opakování postupu od kroku c), až není k dispozici žádný nový uzel.
- 2. Způsob podle nároku 1, vyznačující se tím, že vstupní data se předběžně zpracovávají analytickým algoritmem a dávají se k dispozici v pevném formátu v souboru.
- 3. Způsob podle nároku 1 nebo 2, vyznačující se tím, že konvertovaná data se dávají k dispozici v pevném formátu v souboru pro další zpracování.
- 4. Způsob podle některého z nároků 1 až 3, vyznačující se tím, že jako kořen cílového stromu a kořen zdrojového stromu se označují ty třídy objektů, které leží v hierarchii tříd výše, než všechny ostatní třídy objektů.
- 5. Způsob podle některého z nároků 1 až 4, vyznačující se tím, že pro konstrukci, nového dílčího stromu pod pozorovaným uzlem cílového stromu se pozoruje jenom dílčí strom generující instance, přiřazené tomuto uzlu cílového stromu.
- 6. Způsob podle některého z nároků 1 až 5, vyznačující se tím, že pro každou třídu objektů cílového stromu je definováno přesně jedno pravidlo generování.
- 7. Způsob podle některého z nároků 1 až 6,16 80750 (80750a) • * 9 9 · · * • 9 9«· · 9 » 9 • #9 9 · 9 · *·9999 »· 9· 99 99 9 vyznačující se tím, že podle pravidla generování se zdrojový strom v okolí generující instance prohledává po instancích určité třídy objektů, které mají splňovat speciální podmínky, a při úspěšném vyhledávání se v cílovém stromu vytváří nový uzel a vytváří se instance zdrojového stromu k příslušné generující instanci uzlu cílového stromu.
- 8, Způsob podle některého z nároků 1 vyznačující se tím, že se vytváří uzel stromu jenom když se s pomocí příslušného generování nechá pro něj ve zdrojovém stromu generující instance.až 7, cílového pravidla zj ístit
- 9. Způsob podle některého z nároků 1 až 8, vyznačující se tím, že pravidla k výpočtu atributů jsou funkce, podle kterých se z atributů různých objektů zdrojového stromu počítají atributy nového uzlu cílového stromu.
- 10. Způsob podle některého z nároků 1 až 9, vyznačující se tím, že přípustné třídy objektů, přípustní následníci jednotlivých tříd objektů a atributy, příslušné ke každé třídě objektů, se připravují v regulačním mechanizmu.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE19817617A DE19817617C1 (de) | 1998-04-21 | 1998-04-21 | Verfahren zur Konvertierung baumstrukturierter Daten |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CZ20003910A3 true CZ20003910A3 (cs) | 2001-07-11 |
| CZ298561B6 CZ298561B6 (cs) | 2007-11-07 |
Family
ID=7865210
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CZ20003910A CZ298561B6 (cs) | 1998-04-21 | 1999-04-21 | Zpusob konverze stromove strukturovaných dat |
Country Status (6)
| Country | Link |
|---|---|
| EP (1) | EP1074090B1 (cs) |
| AT (1) | ATE371987T1 (cs) |
| CZ (1) | CZ298561B6 (cs) |
| DE (2) | DE19817617C1 (cs) |
| PL (1) | PL195683B1 (cs) |
| WO (1) | WO1999055004A2 (cs) |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2964831B2 (ja) * | 1993-03-31 | 1999-10-18 | 富士ゼロックス株式会社 | 構造データ処理装置 |
| US6119151A (en) * | 1994-03-07 | 2000-09-12 | International Business Machines Corp. | System and method for efficient cache management in a distributed file system |
| US5842204A (en) * | 1994-10-07 | 1998-11-24 | Tandem Computers, Inc. | Method and apparatus for translating source code from one high-level computer language to another |
| JP3368141B2 (ja) * | 1996-04-10 | 2003-01-20 | シャープ株式会社 | アセンブラ言語ソースプログラム生成装置 |
| GB9608345D0 (en) * | 1996-04-23 | 1996-06-26 | Int Computers Ltd | Data conversion mechanism for computer system |
-
1998
- 1998-04-21 DE DE19817617A patent/DE19817617C1/de not_active Expired - Fee Related
-
1999
- 1999-04-21 WO PCT/DE1999/001208 patent/WO1999055004A2/de not_active Ceased
- 1999-04-21 PL PL99344110A patent/PL195683B1/pl unknown
- 1999-04-21 EP EP99927705A patent/EP1074090B1/de not_active Expired - Lifetime
- 1999-04-21 AT AT99927705T patent/ATE371987T1/de active
- 1999-04-21 DE DE59914481T patent/DE59914481D1/de not_active Expired - Lifetime
- 1999-04-21 CZ CZ20003910A patent/CZ298561B6/cs not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| DE59914481D1 (de) | 2007-10-11 |
| ATE371987T1 (de) | 2007-09-15 |
| PL195683B1 (pl) | 2007-10-31 |
| WO1999055004A2 (de) | 1999-10-28 |
| WO1999055004A3 (de) | 1999-12-23 |
| EP1074090B1 (de) | 2007-08-29 |
| DE19817617C1 (de) | 1999-09-09 |
| CZ298561B6 (cs) | 2007-11-07 |
| EP1074090A2 (de) | 2001-02-07 |
| PL344110A1 (en) | 2001-09-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5745897A (en) | Method and system for compiling management information base specifications | |
| US6915340B2 (en) | System and method for deriving future network configuration data from the current and previous network configuration data | |
| US5067148A (en) | Method and apparatus for planning telephone facilities networks | |
| US5257371A (en) | System packaging object class defining information | |
| US7296038B2 (en) | Context resolution | |
| US6260042B1 (en) | Quick difference and update for tree structure data | |
| WO2001024033A2 (en) | Binary tree with override nodes for representing a time-varying function in an enterprise model | |
| CN113778445A (zh) | 一种跨平台组件生成方法、装置、电子设备及存储介质 | |
| US20170147539A1 (en) | Generation apparatus, program, and generation method | |
| US11537448B1 (en) | Adapting application programming interfaces with schema mappings | |
| Wagner | Embedding arbitrary binary trees in a hypercube | |
| EP4191438B1 (en) | Software information organization method and device, and computer-readable medium | |
| US5946490A (en) | Automata-theoretic approach compiler for adaptive software | |
| CN114025027B (zh) | 数据传输脚本的运行方法、装置、存储介质和电子装置 | |
| JPH08110912A (ja) | 動画検索装置および動画検索方法 | |
| US20230185639A1 (en) | Mapping application programming interface schemas with semantic representations | |
| CZ20003910A3 (cs) | Způsob konverze stromově strukturovaných dat | |
| US20200160450A1 (en) | Systems and methods for decision tree-based management of market risk stress scenarios | |
| KR100256686B1 (ko) | 다중 균형 트리 구조를 이용한 관리정보 트리에서의 노드 검색,생성 및 삭제 방법 | |
| CN113656010B (zh) | 一种微服务自动创建代码仓库的方法、系统、设备和介质 | |
| Fonseca i Casas | Towards a representation of cellular automaton using specification and description language | |
| CN116796955A (zh) | 用于确定业务需求的匹配方案的方法、装置及处理器 | |
| Akkanen et al. | Case study of the evolution of routing algorithms in a network planning tool | |
| Voß | Capacitated minimum spanning trees | |
| Bennett et al. | Object oriented locational analysis |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Patent lapsed due to non-payment of fee |
Effective date: 20170421 |