רשת סמנטית 6- הרצאה - Feigenboim Amichai
Transcription
רשת סמנטית 6- הרצאה - Feigenboim Amichai
הרצאה -6רשת סמנטית RDF – Resource Description Frameworkהיא שפה מבוססת XML לתיאור משאבים כאשר המונח משאב הוא בהקשר מאוד רחב .ניתן לומר שלרוב המשאב זהו קובץ אלקטרוני אשר זמין דרך כתובת .URLאחד השימושים הנפוצים של RDF הוא ליצירת METADATA אודות יחידות מידע הזמינות ברשת לדוגמא קבצים. הסיבה שאנו צריכים את RDF ולא מסתפקים ב XML היא שאנו לא יכולים לכלול בתוך ה XML את שיקולי ההיררכיה שלו – למה אלמנט הוא בתוך אחר ,למעשה בקובץ XML אנו נותנים סמנטיקה רק למידע שמאוחסן באמצעותו ולא למבנה ההיררכי עצמו ,כמו כן אותו ידע יכול להיות מיוצג ע"י היררכיות XMLיות שונות. טרמינולוגיה :מקורות מידע RESOURCE תכונות PROPERTIES -וערכים PROPERTY VALUE השילוב של 3גורמים אלו נקרא טענהSTATEMENT - טרמינולוגיה אלטרנטיבית :למקור המידע SUBJECTלתכונות PREDICATE ולערכי התכונות OBJECT דוגמא ומבנה בסיסי של קובץ RDF <?xml version="1.0" ?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:fgnbmcs="http://www.computing‐services.com"> <rdf:Description rdf:about="http://www.computing‐services.com"> <fgnbmcs:author>Feigenboim Amichai</fgnbmcs:author> <fgnbmcs:owner>Computing Services</fgnbmcs:owner> <fgnbmcs:email>[email protected]</fgnbmcs:email> </rdf:Description> </rdf:RDF> האלמנט Description הינו חובה בתוך השורש RDFותפקידו לזהות את מקור המידע ,זאת על ידי שימוש במאפיין aboutאו ID • בכדי לתקף את תחביר ה RDF שכתבנו נכון נעתיק ונדביק אותו באתר http://www.w3.org/RDF/Validator 1 : אלא גם כגגרף מכווןXM ML רק בצורת המידע שבקובץץ לעיל ניתן גם להציג לא ר את ה רכי התכונות ווהאליפסה זהו הנושא כאשר החיצים הם התכונות הרייבועים אלו ער ר הטענות3 את ף של שלשות המייצגות ת גם בצורת אוסף או ם subjject predicate object o http p://www.com mputing‐servvices.com autho or Feigenboim A F Amichai http p://www.com mputing‐servvices.com owne er Computing S C Services http p://www.com mputing‐servvices.com mail fgnbmcs@gm f mail.com יכול להיות גם קיישור למשאב אלא ל,דווקא ערכים בדידדים א תוכן התכ ונות איננו חייב להיות • :(בתחביר )לדוגמא אחר זאת ע"י שימוש ב <fgn nbmcs:oldsite rdf:resourcce=" http://w www.compu uting‐servicess.com/defauult.htm"/> rdf:parseType=""Literal" :פיין י יש ללהוסיף המאפXML תוכן רך התכונה ת כאשר רוצצים לכלול בער • :א דוגמא <fgn nbmcs:prevsitettl rdf:parrseType="Liteeral"><h1> שירותי-עמיחי פיגנבוים ע חשוב <מיח/h1></ffgnbmcs:prevvsitettl> פננימי בתוךDescriptio on זאת ע"י הו ספת קטע,nested n ערך תכונה ה יכול להיות מקונן • : דדוגמא,התכונה <fgn nbmcs:alsolo ookat> <rdff:Description n rdf:about=""http://www w.dataprog.net"> <fgn nbmcs:onepeer5years>Mu unicipality El ections softw ware</fgnbm mcs:oneper55years> </rd df:Description> </fggnbmcs:alsolookat> 2 • בתוך שורש RDF יכולים להיות כמה קטעי Description • קביעת תוכן תכונה כמשאב בצורה מפורשת נעשה ע"י הוספת המאפיין: " rdf:parseType="Resourceזאת ללא צורך בהוספת המאפיינים about :או IDכלומר ניתן לחסוך את התג ,Descriptionומשמש לסימון לתכונה חסרת תוכן צמתים כאלו ב RDF מכוניםbnode, anonymouse node, blank node : דוגמא: <fgnbmcs:graphicdesigner rdf:parseType="Resource"/> • ניתן לתת לתכונה ריקה שם )אחרת מופיע ריבוע ריק( ע"י המאפיין "rdf:nodeID="name הערה :שם זה חייב להיות ייחודי בתוך קטע Descriptionכלומר אם יש במסמך RDF כמה קטעי Description אז אותו שם יכול לחזור עצמו בכול קטע. דוגמא: <fgnbmcs:reka rdf:nodeID="currently empty"/> • לא חייבים בכול מקום שכותבים URL בקובץ RDFלפרט את המסלול המלא ,ניתן לתת מסלול יחסי אם מוסיפים בשורש את המאפיין xml:base דוגמא אם היינו מוסיפים: <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" ‐xmlns:fgnbmcs=http://www.computing‐services.com xml:base="http://www.computing services.com/"> היינו יכולים בתכונה oldsiteלכתוב במקום את המסלול המלא רק: ><fgnbmcs:oldsite rdf:resource="default.htm"/ הערה :מסלול יחסי יכול להיות גם ביחס למסמך ואז עליו להתחיל בסימן הסולמית # • שימוש במאפיין ID של Descriptionבמקום המאפיין :about מאפשר מתן שם לקטע כאשר הכתובת נבנית האופן אוטומטי ע"י שרשור ערך ה ID עם כתובת המסמך המכיל אותו אין להשתמש ב ID למשאבים ממשיים . • ייצוג מידע מובנה ע"י rdf:value דוגמא: <fgnbmcs:lastUpdate rdf:parseType="Resource"> <rdf:value>93</rdf:value> 3 <fgnbmcs:lastUpdateUnit>day</fgnbmcs:lastUpdateUnit > </fgnbmcs:lastUpdate> ניתן לקשר למשאבים אשר הינם חיצוניים להקשר הנוכחי או שהינם בד"כ קשורים להגדרת • הסכמה של ההיררכיה הנוכחית : דוגמא <rdf:type rdf:resource="http://www.computing-services.net/elemnt/"/> באחד-" ( ע"י שימוש ב"מיכליםLIST OF VALUES ) ניתן לתאר קבוצה של ערכים אפשריים לתכונה המשתמש יכול להכניס, אוסף בו אין סדר מוגדר- חבילהBag ‐ : הבאים CONTAINERS ה3מ המשתמש יכול להכניס, אוסף בו יש חשיבות לסדר- סידרהSeq - ערכים כפולים אוסף ממנו ניתן לבחור רק ערך יחיד- בחירהAlt ‐ ערכים כפולים MEMBERS רכיבי האוספים נקראים :דוגמא <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:fgnbmcs="http://www.computing‐services.com"> <rdf:Description rdf:about="http://www.computing‐services.com/"> <fgnbmcs:aliases> <rdf:Seq> <rdf:li> http://www.computing‐services.com </rdf:li> <rdf:li> http://www.computing‐services.net </rdf:li> <rdf:li> http://www.computing‐services.co.il </rdf:li> </rdf:Seq> </fgnbmcs:aliases> </rdf:Description> </rdf:RDF> :דוגמא נוספת <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:fgnbmcs="http://www.computing‐services.com"> <rdf:Description rdf:about="http://www.computing‐services.com/"> <fgnbmcs:photos> <rdf:Bag> <rdf:li rdf:resource="http://www.computing‐services.com/vsign.png" /> <rdf:li rdf:resource="http://www.computing‐services.net/logo.jpg" /> </rdf:Bag> </fgnbmcs: photos> </rdf:Description> 4 </rdf:RDF> :דוגמא של בחירה <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:fgnbmcs="http://www.computing‐services.com"> <rdf:Description rdf:about="http://www.computing‐services.com/"> <fgnbmcs:email> <rdf:Alt> <rdf:li rdf:resource="[email protected]" /> <rdf:li>[email protected] </rdf:li> </rdf:Alt> </fgnbmcs:email> </rdf:Description> </rdf:RDF> IDדוגמת מיכל הכוללת שימוש ב <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:fgnbmcs="http://www.computing‐services.com"> <rdf:Description rdf:about="http://www.computing‐services.com/"> <fgnbmcs:menu> <rdf:Description rdf:about="#menuoptions"> </rdf:Description> </fgnbmcs:menu> </rdf:Description> <rdf:Seq rdf:ID="menuoptions"> <rdf:li>Intro </rdf:li> <rdf:li>Education </rdf:li> <rdf:li rdf:resource="[email protected]"/> </rdf:Seq> </rdf:RDF> ( נחשבת יותר מעודכנתLI שיטה אחרת לציין אברי מיכל מכול סוג )במקום <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:fgnbmcs="http://www.computing‐services.com"> <rdf:Description rdf:about="http://www.computing‐services.com/"> <fgnbmcs:menu> <rdf:Seq> <rdf:_1>Intro </rdf:_1> <rdf:_2>Education </rdf:_2> <rdf:_3 rdf:resource="[email protected]"/> </rdf:Seq> </fgnbmcs:menu> 5 </rdf:Description> </rdf:RDF> ,List- אשר מהווה אוסף סופי של משאבים מעין רשימהcollection ניתן להגדיר גם אוסף :דוגמא <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:s="http://example.org/students/vocab#"> <rdf:Description rdf:about="http://example.org/courses/6.001"> <s:students rdf:parseType="Collection"> <rdf:Description rdf:about="http://example.org/students/Joe"/> <rdf:Description rdf:about="http://example.org/students/Alice"/> <rdf:Description rdf:about="http://example.org/students/James"/> </s:students> </rdf:Description> </rdf:RDF> : כמעט אותו גרף ניתן להשיג גם בצורה )הארוכה( הבאה-הערה לגבי אוסף זה <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#" xmlns:s="http://example.org/students/vocab#"> <rdf:Description rdf:about="http://example.org/courses/6.001"> <s:students rdf:nodeID="sch1"/> </rdf:Description> <rdf:Description rdf:nodeID="sch1"> <rdf:first rdf:resource="http://example.org/students/Joe"/> <rdf:rest rdf:nodeID="sch2"/> </rdf:Description> <rdf:Description rdf:nodeID="sch2"> <rdf:first rdf:resource="http://example.org/students/Alice"/> <rdf:rest rdf:nodeID="sch3"/> </rdf:Description> <rdf:Description rdf:nodeID="sch3"> <rdf:first rdf:resource="http://example.org/students/James"/> <rdf:rest rdf:resource="http://www.w3.org/1999/02/22‐rdf‐syntax‐ns#nil"/> 6 </rdf:Description> </rdf:RDF> :1 תרגיל כיתה וכן לצייר את הגרף נא אמתו כי RDF מצ"ב קטע אודות פרטי מאמר ברשת נא ליצור עבורו קובץ הגרף שציירתם דומה לוגית למה שיצא באתר הולידציה The article on giant squids, titled "Architeuthis Dux". At http://burningbird.net/articles/monsters3.htm, it written by Shelley Powers, explores The giants squid's mythological representation as the legendary Kraken, as well As‐ describing current efforts to capture images of a live specimen. In addition, The article also provides descriptions of a giant squid's physical Characteristics. It is part of a four‐part series, described at http://burningbird.net/articles/monsters.htm and entitled `A Tale of Two Monsters'. :2 תרגיל אשר כוללים את כול סוגי המיכלים והאוספים שהכרנו ודאו כי כול איבריהם הםRDF קבצי5 צרו . מיהו היוצא דופן, השוו בין הגרפים שנוצרו באתר הוולידציה,(מאותו סוג )או רק משאבים או רק תוכן :תרגיל לבית לא להגשה )בהקשרים משפטיים( נא להבין משמעותן בלעזProvenance וReification נא לחפש במילון הערכים .וכן למצוא תרגום ראוי לעברית להם 7