Your SlideShare is downloading. ×
Identifying Attributes
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Identifying Attributes

673
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
673
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Identifying attributes TMRA 2009 open space session Peter-Paul Kruijsen Morpheus <p.kruijsen@mssm.nl>
  • 2. Problem statement !  Domain: Merge external data into topic map !  Solution: add PSIs in both topic maps to enable merging !  Consequence: Add PSI to almost every topic !  Cumbersome !  Tricky for customers to grasp !  Solution: Merge without hand-coded PSIs
  • 3. Hand-coded PSIs !  PSIs are usually added by Topic Maps expert based on identifying attributes !  http://example.org/people/ssn/12345789 !  http://example.org/keywords/topic_maps !  http://example.org/system/IPK719 !  Not everyone is able to define perfect PSIs !  Unique !  Stable
  • 4. Solution !  Compare topics based on fingerprints !  SSN !  Codes !  Topic name !  Auto-generate PSIs based on these uniquely identifying attributes !  http://psi.mssm.nl/random/1258041512117–030586nsZN5Gs6Tq !  Apply these PSIs to topics before merge !  Configuration can be stored in topic map !  k:identifying-attribute(i:person : k:topic-type, i:ssn : k:attribute) !  k:identifying-attribute(i:system : k:topic-type, i:code : k:attribute) !  k:identifying-attribute(i:keyword : k:topic-type, k:untyped-name : k:attribute)
  • 5. Example !"#$%&'()*"+,-./012* !"#$%&'()*"+,-FGB12* **!"'(#3($"45)67%2* **!"'(#3($"45)67%2* ****!37#869:%2;(<)*=(%!>37#869:%2* ****!37#869:%2=(%H*;(<)!>37#869:%2* **!>"'(#3($"45)67%2* **!>"'(#3($"45)67%2* **!"#'')2!"#$%&'()!>"#'')2* **!"#'')2!"#$%&'()!>"#'')2* **!"#+63%5(?5@"&3<2.ABA5CD5.E!>"#+63%5(?5@"&3<2* **!"#$<()%):7@%&2CDCC5GGG5./0F!>"#$<()%):7@%&2* !>"#$%&'()2* !>"#$%&'()2* !"#$%&'()*"+,-./012* !"#$%&'()*"+,-FGB12* **!37#"+%)3"?"%&2* *!37#"+%)3"?"%&2* *****++,-..,/012//2134.563782.!"%(9$!%!"!!': *****++,-..,/012//2134.563782.!"%(9$!%!"!!': 9#9%(&3/;<%=/&>?@ 9#9%(&3/;<%=/&>?@ **!>37#"+%)3"?"%&2* **!>37#"+%)3"?"%&2* **!"'(#3($"45)67%2* **!"'(#3($"45)67%2* ****!37#869:%2;(<)*=(%!>37#869:%2* ****!37#869:%2=(%H*;(<)!>37#869:%2* **!>"'(#3($"45)67%2* **!>"'(#3($"45)67%2* **!"#'')2./0FGBEDA!>"#'')2* **!"#'')2./0FGBEDA!>"#'')2* **!"#+63%5(?5@"&3<2.ABA5CD5.E!>"#+63%5(?5@"&3<2* **!"#$<()%):7@%&2CDCC5GGG5./0F!>"#$<()%):7@%&2* !>"#$%&'()2* !>"#$%&'()2* !"#$%&'()*"+,-EDA12* **!37#"+%)3"?"%&2<33$#>>$'"I7''7I)9>&6)+(7>./GDCF.G./..EJC0CGDB)'KLGM'BNO!>37#"+%)3"?"%&2* **!"'(#3($"45)67%2!37#869:%2=(%H*;(<)!>37#869:%2!>"'(#3($"45)67%2* **!"'(#3($"45)67%2!37#869:%2;(<)*=(%!>37#869:%2!>"'(#3($"45)67%2* **!"#'')2./0FGBEDA!>"#'')2* **!"#+63%5(?5@"&3<2.ABA5CD5.E!>"#+63%5(?5@"&3<2* *!"#$<()%):7@%&2CDCC5GGG5./0F!>"#$<()%):7@%&2* !>"#$%&'()2*
  • 6. Algorithm !  For two topic maps and a configuration !  For each topic in source topic map !  For each identifying attribute for topic type !  Lookup attribute value in target topic map !  If no PSI present: randomly generate PSI !  Apply PSIs from one topic to the other !  After this loop: merge topic maps
  • 7. Demo Before After
  • 8. Ups/Downs !  Benefits !  Merging no longer requires mastering PSI but only describing uniquely identifying attributes !  Customers write their own XSLT to generate TM/XML !  Applicable even after large imports !  Merge locally based on fingerprints !  Downsides !  Randomly generated PSIs are unreadable !  Possibility to ‘correct’ afterwards !  Enhancement: remove random PSI after merge