{"id":573,"date":"2007-09-16T12:08:10","date_gmt":"2007-09-16T10:08:10","guid":{"rendered":"http:\/\/notizblog.org\/2007\/09\/16\/microjson-microformats-in-json\/"},"modified":"2023-06-27T16:22:07","modified_gmt":"2023-06-27T14:22:07","slug":"microjson-microformats-in-json","status":"publish","type":"post","link":"https:\/\/notiz.blog\/2007\/09\/16\/microjson-microformats-in-json\/","title":{"rendered":"microJSON &#8211; Microformats in JSON"},"content":{"rendered":"\n<p><a href=\"https:\/\/web.archive.org\/web\/20071213004055\/http:\/\/microjson.org\/\">microJSON<\/a> ist ein Projekt von <a href=\"https:\/\/web.archive.org\/web\/20120303203204\/http:\/\/jpsykes.com\/\">Jon Sykes<\/a> und <a href=\"http:\/\/jimbarraud.com\/\">Jim Barraud<\/a>. Es geht darum, <a href=\"http:\/\/microformats.org\">Microformats<\/a> in Form der <a href=\"http:\/\/www.json.org\"><abbr title=\"JavaScript Object Notation\">JSON<\/abbr><\/a> Schreibweise darzustellen. Die Idee von JSON ist, einen einfachen Datenaustausch von Objekten oder auch anderen Datenstrukturen wie z.B. Arrays zwischen Client Systemen (z.B. dem WebBrowser) und Server Systemen zu realisieren. Der Vorteil von JSON ist, dass sie kaum Overhead produziert und in JavaScript \u00fcber die eval() Funktion wieder ganz einfach in ein Objekt gewandelt werden kann.<\/p>\n\n\n\n<p>Beipiel einer hCard:\n<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">id<\/span>=<span class=\"hljs-string\">\"hcard-given-middle-family\"<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"vcard\"<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"fn n\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"given-name\"<\/span>&gt;<\/span>given<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"additional-name\"<\/span>&gt;<\/span>middle<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"family-name\"<\/span>&gt;<\/span>family<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"org\"<\/span>&gt;<\/span>org<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">a<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"email\"<\/span> <span class=\"hljs-attr\">href<\/span>=<span class=\"hljs-string\">\"mailto:email\"<\/span>&gt;<\/span>email<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">a<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"adr\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"street-address\"<\/span>&gt;<\/span>street<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"locality\"<\/span>&gt;<\/span>city<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>,<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"region\"<\/span>&gt;<\/span>state\/province<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>,<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"postal-code\"<\/span>&gt;<\/span>postal<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">span<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"country-name\"<\/span>&gt;<\/span>country<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">span<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"tel\"<\/span>&gt;<\/span>phone<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">a<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"url\"<\/span> <span class=\"hljs-attr\">href<\/span>=<span class=\"hljs-string\">\"aim:goim?screenname=AIM\"<\/span>&gt;<\/span>AIM<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">a<\/span>&gt;<\/span>\n  <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">a<\/span> <span class=\"hljs-attr\">class<\/span>=<span class=\"hljs-string\">\"url\"<\/span> <span class=\"hljs-attr\">href<\/span>=<span class=\"hljs-string\">\"ymsgr:sendIM?YIM\"<\/span>&gt;<\/span>YIM<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">a<\/span>&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Die gleiche hCard als jCard:\n<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JSON \/ JSON mit Kommentaren\" data-shcb-language-slug=\"json\"><span><code class=\"hljs language-json\">{\n<span class=\"hljs-attr\">\"vcard\"<\/span>:{\n  <span class=\"hljs-attr\">\"name\"<\/span>:{\n    <span class=\"hljs-attr\">\"given\"<\/span>:<span class=\"hljs-string\">\"John\"<\/span>,\n    <span class=\"hljs-attr\">\"additional\"<\/span>:<span class=\"hljs-string\">\"Paul\"<\/span>,\n    <span class=\"hljs-attr\">\"family\"<\/span>:<span class=\"hljs-string\">\"Smith\"<\/span>\n  },\n  <span class=\"hljs-attr\">\"org\"<\/span>:<span class=\"hljs-string\">\"Company Corp\"<\/span>,\n  <span class=\"hljs-attr\">\"email\"<\/span>:<span class=\"hljs-string\">\"john@companycorp.com\"<\/span>,\n  <span class=\"hljs-attr\">\"address\"<\/span>:{\n    <span class=\"hljs-attr\">\"street\"<\/span>:<span class=\"hljs-string\">\"50 Main Street\"<\/span>,\n    <span class=\"hljs-attr\">\"locality\"<\/span>:<span class=\"hljs-string\">\"Cityville\"<\/span>,\n    <span class=\"hljs-attr\">\"region\"<\/span>:<span class=\"hljs-string\">\"Stateshire\"<\/span>,\n    <span class=\"hljs-attr\">\"postalCode\"<\/span>:<span class=\"hljs-string\">\"1234abc\"<\/span>,\n    <span class=\"hljs-attr\">\"country\"<\/span>:<span class=\"hljs-string\">\"Someplace\"<\/span>\n  },\n  <span class=\"hljs-attr\">\"tel\"<\/span>:<span class=\"hljs-string\">\"111-222-333\"<\/span>,\n  <span class=\"hljs-attr\">\"aim\"<\/span>:<span class=\"hljs-string\">\"johnsmith\"<\/span>,\n  <span class=\"hljs-attr\">\"yim\"<\/span>:<span class=\"hljs-string\">\"smithjohn\"<\/span>\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JSON \/ JSON mit Kommentaren<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">json<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Neben den Abbildungen der Microformats hCard (<a href=\"https:\/\/web.archive.org\/web\/20080516043808\/http:\/\/microjson.org:80\/wiki\/JCard\">jCard<\/a>) und hCalendar (<a href=\"https:\/\/web.archive.org\/web\/20080516044142\/http:\/\/microjson.org\/wiki\/JCalendar\">jCalendar<\/a>) sind auch die Format jAtom, jResume, jReview, jAtom und jResume geplant. Weitere abbildung gibt es f\u00fcr normale Formulare (<a href=\"https:\/\/web.archive.org\/web\/20080516234756\/http:\/\/microjson.org\/wiki\/JForm\">jForm<\/a>), sowie auch f\u00fcr RSS Feeds (<a href=\"https:\/\/web.archive.org\/web\/20071111093225\/http:\/\/microjson.org:80\/wiki\/JRss\">jRSS<\/a>).<\/p>\n\n\n\n<p>MicroJSON sind meiner Meinung nach eine sehr gute Idee, wenn man Bedenkt dass viele gute Microformats Parser, wie z.B. der vom Firefox Addon <em><a href=\"https:\/\/web.archive.org\/web\/20101120155908\/http:\/\/kaply.com:80\/weblog\/operator\/\">Operator<\/a><\/em> verwendete <em><a href=\"https:\/\/web.archive.org\/web\/20070303193612\/http:\/\/www.kaply.com\/weblog\/2007\/01\/31\/parsing-microformats\/\">ufParser<\/a><\/em>, auf JavaScript basiert.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>microJSON ist ein Projekt von Jon Sykes und Jim Barraud. Es geht darum, Microformats in Form der JSON Schreibweise darzustellen. Die Idee von JSON ist, einen einfachen Datenaustausch von Objekten oder auch anderen Datenstrukturen wie z.B. Arrays zwischen Client Systemen (z.B. dem WebBrowser) und Server Systemen zu realisieren. Der Vorteil von JSON ist, dass sie [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"webmentions_disabled_pings":false,"webmentions_disabled":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[2],"tags":[309,404,164,406,183,407],"class_list":{"0":"post-573","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-web","7":"tag-javascript","8":"tag-json","9":"tag-microformats","10":"tag-microjson","11":"tag-mikroformate","12":"tag-ufparser","13":"h-entry","14":"hentry"},"_links":{"self":[{"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/posts\/573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/comments?post=573"}],"version-history":[{"count":1,"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/posts\/573\/revisions"}],"predecessor-version":[{"id":22719,"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/posts\/573\/revisions\/22719"}],"wp:attachment":[{"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/media?parent=573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/categories?post=573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/notiz.blog\/wp-api\/wp\/v2\/tags?post=573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}