<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"><channel><title>Disruptive Library Technology Jester &#187; Raw Technology</title> <atom:link href="http://dltj.org/category/raw-technology/feed/" rel="self" type="application/rss+xml" /><link>http://dltj.org</link> <description>We&#039;re Disrupted, We&#039;re Librarians, and We&#039;re Not Going to Take It Anymore</description> <lastBuildDate>Mon, 06 Feb 2012 20:04:22 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <cloud domain='dltj.org' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' /> <creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/us/</creativeCommons:license> <item><title>E-mail Phishing Attempts Get Trickier: Fake bounced mail and Fake mail-from-scanner</title><link>http://dltj.org/article/email-phishing-attempts-get-trickier/</link> <comments>http://dltj.org/article/email-phishing-attempts-get-trickier/#comments</comments> <pubDate>Wed, 26 Oct 2011 02:42:19 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Meta Category]]></category> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[email]]></category> <category><![CDATA[security]]></category><guid isPermaLink="false">http://dltj.org/?p=3458</guid> <description><![CDATA[Two phishing1 attempts made it through the work spam filter earlier this month, and they show the creativity of bad guys as they try to get access to your machine. The attempts at social engineering were interesting enough I thought &#8230; <a href="http://dltj.org/article/email-phishing-attempts-get-trickier/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=3458"></abbr><p>Two phishing<sup><a href="http://dltj.org/article/email-phishing-attempts-get-trickier/#footnote_0_3458" id="identifier_0_3458" class="footnote-link footnote-identifier-link" title="I think these would be classified as spear phishing as defined by Webopedia:  &amp;#8220;A type of phishing attack that focuses on a single user or department within an organization, addressed from someone within the company in a position of trust and requesting information such as login IDs and passwords.  Spear phishing scams will often appear to be from a company&amp;#8217;s own human resources or technical support divisions and may ask employees to update their username and passwords. Once hackers get this data  they can gain entry into secured networks. Another type of spear phishing attack will ask users to click on a link, which deploys spyware that can thieve data.&amp;#8221;">1</a></sup> attempts made it through the work spam filter earlier this month, and they show the creativity of bad guys as they try to get access to your machine.  The attempts at social engineering were interesting enough I thought I&#8217;d describe them here.  We&#8217;re getting pretty close the line where we can&#8217;t tell a legitimate e-mail from ones with nasty side effects.</p><p><h2>The Fake Bounced Message</h2><br />This message has the appearance of being a bounced e-mail from a server called &#8216;cyber.net.pk&#8217;.<br /><div id="attachment_3460" class="wp-caption aligncenter" style="width: 627px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; display: block; margin-right: auto; margin-left: auto;"><img src="http://cdn.dltj.org/wp-content/uploads/2011/10/fake-bounced-message.png" alt="Screenshot of a fake bounced e-mail message." title="fake-bounced-message" width="617" height="593" class="size-medium wp-image-3460" /><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Screenshot of a fake bounced e-mail message.</p></div><br />There is, in fact, a server called &#8216;cyber.net.pk&#8217; (.pk is the country code for Pakistan), but if you look at the IP address in the headers of the message it is actually a computer in China (127.72.91.188, or &#8220;188.91.72.124.board.xm.fj.dynamic.163data.com.cn&#8221;).</p><blockquote style="font-family: monospace;text-indent: -25px;padding-left: 25px;"><p>Received: from cyber.net.pk (124.72.91.188) by mail.lyrasis.org (10.10.10.2) with Microsoft SMTP Server id 8.1.436.0; Sun, 16 Oct 2011 06:48:44 -0400</p></blockquote><p>The payload is in the &#8216;document.zip&#8217; file.  I downloaded it without opening it, and uploaded it to the Microsoft Malware Protection Center.  It <a href="https://www.microsoft.com/security/portal/Submission/SubmissionHistory.aspx?SubmissionId=7242BBCE-23E8-4CD8-9481-3AC53B882594">told me</a> that it was a version of <a href="https://www.microsoft.com/security/portal/Threat/Encyclopedia/Entry.aspx?ThreatId=-2147457064">Mydoom</a> &#8212; an old e-mail worm that installs a backdoor on your computer. <a href="http://en.wikipedia.org/wiki/Mydoom" title="Mydoom | Wikipedia">Mydoom</a> is listed on Wikipedia as dating from early 2004, so maybe this isn&#8217;t all new &#8212; but this is the first one I&#8217;ve seen leak through the e-mail firewall in quite some time.</p><p><h2>Fake Scanner-to-Email Message</h2><br />This one piggybacks on the capabilities of newer networked scanners and all-in-one printers to send copies of documents by e-mail.<br /><div id="attachment_3461" class="wp-caption aligncenter" style="width: 629px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; display: block; margin-right: auto; margin-left: auto;"><img src="http://cdn.dltj.org/wp-content/uploads/2011/10/fake-document-scanner.png" alt="Screenshot of a fake e-mail message from a networked scanner." title="fake-document-scanner" width="619" height="371" class="size-medium wp-image-3461" /><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Screenshot of a fake e-mail message from a networked scanner.</p></div><br />This one looks like a document from one of our internal HP printers.  The give-away here, though, is that the message asks the user to follow a link to retrieve the document.  The real hardware just sends the document as an attachment.  (There also isn&#8217;t such a thing as an HP Officejet 88824A.)  It isn&#8217;t beyond the capabilities, though, for bad guys to combine this attack path with the document attachment one above and make you think you were received a document from a network scanner.  The lesson to be learned here, I expect, is that you shouldn&#8217;t open documents that appear to come from networked scanners unless you have sent the document yourself.  If it appears to come from someone else, call that person and ask if they really sent it.</p><p>In short &#8212; be careful out there everyone, and if you see something suspicious or unexpected, ask someone about it.  (Oh, and keep your anti-virus and internet security software updated!)</p><h2>Footnotes</h2><ol class="footnotes"><li id="footnote_0_3458" class="footnote">I think these would be classified as <em><a href="http://www.webopedia.com/TERM/S/spear_phishing.html" title="What is spear phishing? - A Word Definition From the Webopedia Computer Dictionary">spear phishing</a></em> as defined by Webopedia:  &#8220;A type of phishing attack that focuses on a single user or department within an organization, addressed from someone within the company in a position of trust and requesting information such as login IDs and passwords.  Spear phishing scams will often appear to be from a company&#8217;s own human resources or technical support divisions and may ask employees to update their username and passwords. Once hackers get this data  they can gain entry into secured networks. Another type of spear phishing attack will ask users to click on a link, which deploys spyware that can thieve data.&#8221;</li></ol>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/email-phishing-attempts-get-trickier/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>W3C Incubator Group Report on Library Linked Data Published</title><link>http://dltj.org/article/w3c-lld-report/</link> <comments>http://dltj.org/article/w3c-lld-report/#comments</comments> <pubDate>Tue, 25 Oct 2011 14:02:35 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[description]]></category> <category><![CDATA[linked data]]></category> <category><![CDATA[w3c]]></category><guid isPermaLink="false">http://dltj.org/?p=3455</guid> <description><![CDATA[This morning the World Wide Web Consortium (W3C) announced the publication of the final report of the Library Linked Data Incubator Group. The abstract is reproduced below.The mission of the W3C Library Linked Data Incubator Group, chartered from May 2010 &#8230; <a href="http://dltj.org/article/w3c-lld-report/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=3455"></abbr><p>This morning the World Wide Web Consortium (W3C) <a href="http://www.w3.org/News/2011#entry-9239" title="W3C News Archive: 2011 W3C">announced</a> the publication of the <a href="http://www.w3.org/2005/Incubator/lld/XGR-lld/" title="301 Moved Permanently">final report</a> of the <a href="http://www.w3.org/2005/Incubator/lld/" title="W3C Library Linked Data  Incubator Group">Library Linked Data Incubator Group</a>.  The abstract is reproduced below.</p><blockquote><p>The <a href="http://www.w3.org/2005/Incubator/lld/charter" class="external text" title="http://www.w3.org/2005/Incubator/lld/charter">mission</a> of the <a href="http://www.w3.org/2005/Incubator/lld/" title="W3C Library Linked Data  Incubator Group">W3C Library Linked Data Incubator Group</a>, chartered from May 2010 through August 2011, has been &#8220;to help increase global interoperability of library data on the Web, by bringing together people involved in Semantic Web activities — focusing on Linked Data — in the library community and beyond, building on existing initiatives, and identifying collaboration tracks for the future.&#8221; In Linked Data, data is expressed using standards such as <a href="http://www.w3.org/RDF/" title="RDF - Semantic Web Standards">Resource Description Framework</a> (RDF), which specifies relationships between things, and <a href="http://en.wikipedia.org/wiki/Uniform_Resource_Identifier" class="external text" title="http://en.wikipedia.org/wiki/Uniform_Resource_Identifier">Uniform Resource Identifiers</a> (<abbr title="Uniform Resource Identifiers">URIs</abbr>, or &#8220;Web addresses&#8221;).  This final report of the Incubator Group examines how Semantic Web standards and Linked Data principles can be used to make the valuable information assets that library create and curate — resources such as bibliographic data, authorities, and concept schemes — more visible and re-usable outside of their original library context on the wider Web.</p><p>The Incubator Group began by eliciting reports on relevant activities from parties ranging from small, independent projects to national library initiatives (see the separate report, <a href="http://www.w3.org/2005/Incubator/lld/XGR-lld-usecase-20111025/" title="Library Linked Data Incubator Group: Use Cases">Library Linked Data Incubator Group: Use Cases</a>).  These use cases provided the starting point for the work summarized in the report: an analysis of the benefits of library Linked Data, a discussion of current issues with regard to traditional library data, existing library Linked Data initiatives, and legal rights over library data; and recommendations for next steps. The report also summarizes the results of a survey of current Linked Data technologies and an inventory of library Linked Data resources available today (see also the more detailed report, <a href="http://www.w3.org/2005/Incubator/lld/XGR-lld-vocabdataset-20111025/" title="Library Linked Data Incubator Group: Datasets, Value Vocabularies, and Metadata Element Sets">Library Linked Data Incubator Group: Datasets, Value Vocabularies, and Metadata Element Sets</a>).</p><p>Key recommendations of the report are:</p><ul><li> That <strong>library leaders</strong> identify sets of data as possible candidates for early exposure as Linked Data and foster a discussion about Open Data and rights;</li><li> That <strong>library standards bodies</strong> increase library participation in Semantic Web standardization, develop library data standards that are compatible with Linked Data, and disseminate best-practice design patterns tailored to library Linked Data;</li><li> That <strong>data and systems designers</strong> design enhanced user services based on Linked Data capabilities, create <abbr title="Uniform Resource Identifiers">URIs</abbr> for the items in library datasets, develop policies for managing <abbr title="Resource Description Framework">RDF</abbr> vocabularies and their <abbr title="Uniform Resource Identifiers">URIs</abbr>, and express library data by re-using or mapping to existing Linked Data vocabularies;</li><li> That <strong>librarians and archivists</strong> preserve Linked Data element sets and value vocabularies and apply library experience in curation and long-term preservation to Linked Data datasets.</li></ul></blockquote><p>I&#8217;m so happy to have been a part of the creation of this report. I think it is an important stake in the ground that documents where we are now and where we could be going with connecting library data to a wider world.  There was such a huge interest in linked data at the American Library Association meeting this past summer in New Orleans that it was hard to keep track of all of the programs.</p><p>The question now becomes, &#8220;what next?&#8221;  The W3C has a new type of work effort called <a href="http://www.w3.org/community/about/#cg" title="About W3C Community and Business Groups | Community and Business Groups">Community Groups</a> where work could continue, and there was some discussion on the Library Linked Data Incubator Group discussion list about continuing work as a community group.  (To date, I don&#8217;t think anyone has stepped up to lead it.)  Or is this something that <acronym title="International Federation of Library Associations and Institutions">IFLA</acronym> or <acronym title="Joint Steering Committee for Development of RDA">JSC</acronym> could take on?</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/w3c-lld-report/feed/</wfw:commentRss> <slash:comments>12</slash:comments> </item> <item><title>IETF May Form Working Group on &#8220;Reputation Services&#8221;</title><link>http://dltj.org/article/ietf-reputation-services-wg/</link> <comments>http://dltj.org/article/ietf-reputation-services-wg/#comments</comments> <pubDate>Tue, 04 Oct 2011 01:58:18 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[IETF]]></category> <category><![CDATA[rating service]]></category> <category><![CDATA[reputation]]></category><guid isPermaLink="false">http://dltj.org/?p=3426</guid> <description><![CDATA[Last week I saw a post on the IETF Announcement List seeking feedback on the possible formation of a &#8220;Reputation Services&#8221; working group. That posting has more information, but the basic abstract is posted below. Now I will admit up &#8230; <a href="http://dltj.org/article/ietf-reputation-services-wg/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=3426"></abbr><p>Last week I saw a <a href="http://www.ietf.org/mail-archive/web/ietf-announce/current/msg09409.html" title="WG Review: Reputation Services (repute)">post</a> on the <acronym title="Internet Engineering Task Force">IETF</acronym> Announcement List seeking feedback on the possible formation of a &#8220;Reputation Services&#8221; working group.  That posting has more information, but the basic abstract is posted below.  Now I will admit up front that I tend to see the world through librarian-colored glasses, but creating a mechanism that helps uses make a &#8220;meaningful choice about the handling of content requires an assessment of its safety or &#8216;trustworthiness&#8217;&#8221; sounds like something librarians should be involved with.<br /></p><blockquote><p>In the open Internet, making a meaningful choice about the handling of content requires an assessment of its safety or &#8220;trustworthiness&#8221;. This is based on a trust metric for the owner (identity) of an identifier associated with the content, to distinguish (likely) good actors from bad actors.  The generic term for such information is &#8220;reputation&#8221;.  This working group will develop mechanisms for reputation reporting by independent services.  One mechanism will be for a basic assessment of trustworthiness.  Another will provide a range of attribute/value data that is used as input to such an assessment.  Each service determines the attributes it reports.</p><p>Various mechanisms have been developed for associating a verified identifier with email content, such as with SPF (RFC4408) and DKIM (RFC4871).  An existing reputation query mechanism is Vouch-by-Reference (RFC5518). It provides a simple Boolean response concerning a domain name used for email.  The current working group effort will expand upon this, to support additional applications &#8212; such as Web pages and hosts &#8212; and a wider range of reporting information.</p></blockquote><p>The announcement points to five IETF internet standard drafts, the first of which is an overarching document: <a href="https://datatracker.ietf.org/doc/draft-kucherawy-reputation-model/">A Model for Reputation Interchange</a>.  In that document there are these statements:<br /><blockquote>It could also be useful in rating the security of web sites, the quality of service of an Internet Service Provider (ISP) or Application Service Provider (ASP), the customer satisfaction levels at e-commerce sites, and even things unrelated to Internet protocols, such as rating plumbers, hotels, or books.  Just as human beings traditionally rely on the recommendations of trusted parties in the physical world, so too they can be expected to make use of such reputation information in a variety of applications on the Internet.</p></blockquote><p>What do other people think?  Could libraries serve as independent rating bureaus for content?  That seems to be possible in this sort of framework.  The deadline for comments on whether the IETF should form a working group is October 4th, which is roughly 24 hours after I post this message.  If the working group is formed, though, I wonder if libraries should play a part in the development of the standard.  I haven&#8217;t worked in the IETF process before, so I&#8217;d especially be interested in hearing the perspectives of any library technologists that work within the IETF.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/ietf-reputation-services-wg/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Fixing a Bad SSH authorized_keys under Amazon EC2</title><link>http://dltj.org/article/ec2-fix-authorized_keys/</link> <comments>http://dltj.org/article/ec2-fix-authorized_keys/#comments</comments> <pubDate>Tue, 12 Jul 2011 02:38:29 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[Amazon EC2]]></category> <category><![CDATA[system administration]]></category><guid isPermaLink="false">http://dltj.org/?p=3061</guid> <description><![CDATA[I was doing some maintenance on the Amazon EC2 instance that underpins DLTJ and in the process managed to mess up the .ssh/authorized_keys file. (Specifically, I changed the permissions so it was group- and world-readable, which causes `sshd` to not &#8230; <a href="http://dltj.org/article/ec2-fix-authorized_keys/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=3061"></abbr><p>I was doing some maintenance on the Amazon EC2 instance that underpins <i><acronym title="Disruptive Library Technology Jester">DLTJ</acronym></i> and in the process managed to mess up the .ssh/authorized_keys file.  (Specifically, I changed the permissions so it was group- and world-readable, which <a href="https://help.ubuntu.com/community/SSH/OpenSSH/Keys#Permission%20denied%20%28publickey%29">causes `sshd` to not allow users to log in using those private keys</a>.)  Unfortunately, there is only one user on this server, so effectively I just locked myself out of the box.</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ssh -i .ssh/EC2-dltj.pem me@dltj.org
Identity added: .ssh/EC2-dltj.pem (.ssh/EC2-dltj.pem)
Permission denied (publickey).</pre></div></div><p>After browsing the Amazon support forums I managed to puzzle this one out.  Since I didn&#8217;t see this exact solution written up anywhere, I&#8217;m posting it here hoping that someone else will find it useful.  And since you are reading this, you know that they worked.</p><p><h2>Solution Overview</h2><br />Basically we&#8217;ve got to get the root filesystem mounted on another EC2 instance so we can get access to it.  I&#8217;m using placeholder identifiers like <code>i-target</code>, <code>i-scratch</code>, and <code>vol-rootfs</code> in place of real values.</p><ol type="1" start="1"><li>Stop the target EC2 instance (<code>i-target</code>).</li><li>Note the location of and unmount its root filesystem, and detach its EBS volume (<code>vol-rootfs</code>) from the target instance (<code>i-target</code>).</li><li>Attach the volume (<code>vol-rootfs</code>) on another EC2 instance (<code>i-scratch</code>) and mount the filesystem.</li><li>Change the file permissions (or whatever needs to be done).</li><li>Unmount the filesystem and detach the volume (<code>vol-rootfs</code>) from the other EC2 instance (<code>i-scratch</code>).</li><li>Attach the volume (<code>vol-rootfs</code>) to the target EC2 instance (<code>i-target</code>) and start it.</li></ol><p>Assuming you&#8217;ve got all of the environment variables set up with the appropriate AWS credentials, these are the commands:</p><p><h2>Stop the Target Instance</h2></p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ec2-stop-instances i-target</pre></div></div><p><h2>Detach Root EBS Volume</h2><br />A couple of steps here.  We need to remember where the root filesystem is mounted so we can put it back at the end.  So first get a description of the instance.  It will look something like this.</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ec2-describe-instances i-instance
INSTANCE	i-instance	ami-xxxxxxxx	ec2-[your-IP].compute-1.amazonaws.com	[...lots of other stuff....]
BLOCKDEVICE	/dev/sdh    vol-datafs      2011-07-12T01:37:21.000Z
BLOCKDEVICE	/dev/sda1   vol-rootfs      2011-07-12T01:37:21.000Z</pre></div></div><p>In this case we need to remember <code>/dev/sda1</code>.  (Note that we can ignore the <code>vol-datafs</code> &#8212; on my instance it is where the database and other data is stored.  If you don&#8217;t know which volume is your root volume, you might be facing some trial and error in the steps below until you find it.)  Now we detach it:</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ec2-detach-volume vol-rootfs</pre></div></div><p><h2>Attach Volume Elsewhere</h2><br />This set of instructions assumes that you have another EC2 instance running somewhere else.  If you don&#8217;t have one, start a micro instance for this purpose then terminate it when you are done.  We&#8217;re going to attach it as <code>/dev/sdf</code>.</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ec2-attach-volume vol-rootfs --instance i-scratch -d /dev/sdf</pre></div></div><p>Now log into <code>i-scratch</code> and mount the volume.</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ mount /dev/sdf /mnt</pre></div></div><p><h2>Make Changes</h2><br />In my case:</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ chmod 600 /mnt/home/me/.ssh/authorized_keys</pre></div></div><p><h2>Unmount/Detach from i-Scratch</h2><br />While still on the i-scratch server:</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ umount /mnt</pre></div></div><p>Detatch from the scratch server.</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ec2-detach-volume vol-rootfs</pre></div></div><p><h2>Reattach the Volume and Start the Server</h2><br />We&#8217;re on the home stretch now.  Note that in the first command we&#8217;re using the mount point we found in the second step.</p><div class="wp_syntax"><div class="code"><pre class="shell" style="font-family:monospace;">$ ec2-attach-volume vol-rootfs --instance i-target -d /dev/sda1
$ ec2-start-instances i-target</pre></div></div><p>After the instance starts, you should be able to log in.  If not, go through the steps again and read the syslog files in <code>/var/log</code> to figure out what is going on.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/ec2-fix-authorized_keys/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Call for Public Comment &#8212; W3C Library Linked Data Incubator Group</title><link>http://dltj.org/article/w3c-lld-public-comment/</link> <comments>http://dltj.org/article/w3c-lld-public-comment/#comments</comments> <pubDate>Wed, 29 Jun 2011 13:36:07 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[Library Linked Data]]></category> <category><![CDATA[linked data]]></category> <category><![CDATA[w3c]]></category><guid isPermaLink="false">http://dltj.org/?p=3042</guid> <description><![CDATA[The W3C Library Linked Data (LLD) Incubator Group invites librarians, publishers, linked data researchers, and other interested parties to review and comment on drafts of reports to be published later this year. The LLD group has been chartered from May &#8230; <a href="http://dltj.org/article/w3c-lld-public-comment/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=3042"></abbr><p>The <a href="http://www.w3.org/2005/Incubator/lld/" title="W3C Library Linked Data  Incubator Group">W3C Library Linked Data (LLD) Incubator Group</a> invites librarians, publishers, linked data researchers, and other interested parties to review and comment on drafts of reports to be published later this year. The LLD group has been chartered from May 2010 through August 2011 to prepare a series of reports on the existing and potential use of Linked Data technology for publishing library data. The group is currently preparing:</p><ul type="disc"><li>A <a href="http://www.w3.org/2005/Incubator/lld/wiki/DraftReportWithTransclusion" title="Draft Report With Transclusion - Library Linked Data">report</a> describing Benefits of LLD, an Overview of Existing Vocabularies and Data Sets, Relevant Technologies, Implementation Challenges, and Recommendations</li><li>A <a href="http://www.w3.org/2005/Incubator/lld/wiki/UseCaseReport" title="Use Case Report - Library Linked Data">survey report</a> of use cases describing existing projects</li><li>A <a href="http://www.w3.org/2005/Incubator/lld/wiki/Vocabulary_and_Dataset" title="Vocabulary and Dataset - Library Linked Data">survey report</a> of Vocabularies and Datasets</li></ul><p><h2>Submitting Comments</h2></p><p>The incubator group invites comments in one of two ways. Feedback can be posted as comments to individual sections on a <a href="http://blogs.ukoln.ac.uk/w3clld/" title="W3C Library Linked Data Public Comments">dedicated blog</a>.  Comments can also be sent by e-mail to <a href="mailto:public-lld@w3.org">public-lld@w3.org</a> using descriptive subject lines such as:</p><pre>    Subject: [COMMENTS] "Benefits" - section on "Benefits to Developers"</pre><p>Comments sent this way are <a href="http://lists.w3.org/Archives/Public/public-lld/" title="public-lld@w3.org Mail Archives">archived in the public mailing list</a>.</p><p>Comments will be especially welcome in the four weeks from 24 June through 22 July. Reviewers should note that as with Wikipedia, the text may be revised and corrected by its editors in response to comments at any time, but that earlier versions of a document may be viewed by clicking on the History tab.</p><p>It is anticipated that the three reports will be published in final form by 31 August.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/w3c-lld-public-comment/feed/</wfw:commentRss> <slash:comments>10</slash:comments> </item> <item><title>PPTP VPN for iOS with AT&amp;T Uverse and DD-WRT</title><link>http://dltj.org/article/pptp-uverse-ddwrt/</link> <comments>http://dltj.org/article/pptp-uverse-ddwrt/#comments</comments> <pubDate>Fri, 17 Jun 2011 16:41:33 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[iOS]]></category> <category><![CDATA[networking]]></category> <category><![CDATA[pptp]]></category> <category><![CDATA[security]]></category> <category><![CDATA[vpn]]></category><guid isPermaLink="false">http://dltj.org/?p=3025</guid> <description><![CDATA[Wandering into public or semi-public wireless networks makes me nervous because I know how my network traffic can be easily watched, and because I&#8217;m a geek with control issues I&#8217;m even more nervous when using devices that I can&#8217;t get &#8230; <a href="http://dltj.org/article/pptp-uverse-ddwrt/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=3025"></abbr><p>Wandering into public or semi-public wireless networks makes me nervous because I know how my network traffic can be easily watched, and because I&#8217;m a geek with control issues I&#8217;m even more nervous when using devices that I can&#8217;t get to the insides of (like phones and tablets).  One way to tamp down my concerns is to use a Virtual Private Network (VPN) to tunnel the device&#8217;s network connection through the public wireless network to a trusted end-point, but most of those options require a subscription to a VPN service or a VPN installed in a corporate network.  I thought about using one of the open source VPN implementations with an Amazon EC2 instance, but it isn&#8217;t possible with the EC2 network configuration judging from the comments on the Amazon Web Services support forums.  (Besides, installing one of the open source VPN software implementations looks far from turnkey.)  Just before I lost hope, though, I saw a reference to using the open source DD-WRT consumer router firmware to do this.  After plugging away at it for an hour or so, I made it work with my home router, a AT&#038;T U-verse internet connection, and iOS devices.  It wasn&#8217;t easy, so I&#8217;m documenting the steps here in case I need to set this up again.</p><p><h2>Prerequisites</h2><br />To make this happen, I&#8217;m using a <a href="http://www.dlink.com/DIR-825" title="D-Link Xtreme N Dual Band Gigabit Router">D-Link DIR-825</a> that has been flashed with &#8220;v24-sp2 (04/23/10) std&#8221; of the <a href="http://www.dd-wrt.com/wiki/index.php/What_is_DD-WRT%3F" title="What is DD-WRT? - DD-WRT Wiki">DD-WRT firmware</a>.  For my internet connection I have a <a href="http://www.att.com/u-verse/explore/residential-gateway.jsp" title="AT&amp;T Residential Gateway">AT&#038;T U-verse residential gateway</a> and a &#8220;Max Turbo&#8221; plan (I work from home so I need the 3 Mbps uplink speed that is only available with &#8220;Max Turbo&#8221;, although that added uplink capacity is certainly helpful for this road-warrior VPN use).  I also have a pair of iOS version 4.3.3 devices; this setup might work for other handheld operating systems (e.g. Android or Windows Mobile), but I don&#8217;t have any of those to test with.</p><p>DD-WRT comes with support for a point-to-point-tunneling-protocol (PPTP) server.  I know <a href="http://pptpclient.sourceforge.net/protocol-security.phtml" title="PPTP Protocol Security">PPTP has some inherent security risks</a>.  At this point I&#8217;m just aiming to be harder for someone passively listening on the public wireless network to eavesdrop on my connections.  I&#8217;m not doing anything ultra-sensitive that I need advanced encryption; I just don&#8217;t want to make it easy to watch what my devices are doing.</p><p><h2>Setting up the AT&#038;T U-verse Residential Gateway</h2><br />Since the D-Link router is behind the U-verse residential gateway, we need to punch a couple holes through its firewall to allow downstream connections from the iOS devices to reach the D-Link router.  Specifically, one needs to forward ports 1723/TCP and 1723/UDP through the residential gateway firewall to the internal D-Link router.  To do this:</p><ol type="1" start="1"><li>Connect to the web interface of the residential gateway, select the <em>Settings</em> tab followed by the <em>Firewall</em> tab then the <em>Applications, Pinholes and DMZ</em> tab.</li><li>This screen has two steps:  1) Select a computer; then 2) Edit firewall settings for this computer.  Click on the link to &#8220;Choose&#8221; the DIR-825 router (by name).</li><li>In the second step choose the &#8220;Add a new user-defined application&#8221; link.  Use &#8220;PPTP&#8221; for the <em>Application Profile Name</em>.</li><li>Select &#8220;TCP&#8221; and put &#8220;1723&#8243; in the <em>From</em> text box, under <em>Application Type</em> select <em>PPTP virtual private network server</em> and leave the rest of the boxes blank for the defaults; click on <em>Add to List</em>.</li><li>Repeat everything in the last step except choose <em>UDP</em> in place of <em>TCP</em>.</li><li>Click on the <em>Back</em> button to return to the <em>Allow device application traffic to pass through firewall</em> screen.</li><li>Select the <em>Allow individual application(s)</em> radio button, click on the <em>User-defined</em> applications list, pick &#8220;PPTP&#8221; from the Application List, and click on <em>Add</em>.</li><li>Click <em>Save</em>.</li></ol><p>The U-verse residential gateway will now pass everything inbound on ports 1723/TCP and 1723/UDP to the D-Link router.  You&#8217;re done with the residential gateway setup now.</p><p><h2>Setting up the PPTP Service on DD-WRT</h2><br />Now we need to set up the DD-WRT PPTP service.  This is harder than it probably should be, but given the geeky focus of the DD-WRT effort (in my humble opinion), features seem to come before user interface and documentation niceties.  This works for me, but it isn&#8217;t entirely clear or easy, and I can&#8217;t offer troubleshooting insights if it doesn&#8217;t work for you.  It has two main steps &#8212; first, turn on and configure the PPTP server; and second, patch the PPTP server configuration with a start-up script so that it actually works.  First, the PPTP server configuration:</p><ol type="1" start="1"><li>Log onto the DD-WRT web interface, select the <em>Services</em> tab then the <em>VPN</em> tab.</li><li>Enable <em>PPTP Server</em>, <em>Broadcast support</em>, and <em>Force MPPE Encryption</em>.</li><li>Put in the WAN IP (listed in the upper right corner of the web page) in the <em>Server IP</em> box.  (Some instructions I have seen said that this can be left blank and the firmware will automatically pick it up.  That didn&#8217;t work for me.)</li><li>For Client IPs, put in a range of LAN-side IPs that aren&#8217;t being used by the DHCP server.  In my case I&#8217;m using &#8220;192.168.68.200-210&#8243;.</li><li>Put in one or more <em>CHAP-Secrets</em>.  These are the username and passwords used on the PPTP client to connect to this server, and they follow a weird form:  username-space-asterisk-space-password-space-asterisk.  For example:<pre>username * password *</pre></li><li>Leave <em>Radius</em> disabled.</li><li>At the bottom of the screen, pick <em>Apply Settings</em>.</li></ol><p>The second step is the startup script:</p><ol type="1" start="1"><li>Select the <em>Administration</em> tab then the <em>Commands</em> tab.</li><li>Put this in the <em>Commands</em> text box, then select <em>Save Startup</em>:<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/sh</span>
<span style="color: #c20cb9; font-weight: bold;">sed</span> <span style="color: #660033;">-i</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">'s/mppe .*/mppe required,stateless/'</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>pptpd<span style="color: #000000; font-weight: bold;">/</span>options.pptpd
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;nopcomp&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>pptpd<span style="color: #000000; font-weight: bold;">/</span>options.pptpd
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;noaccomp&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>pptpd<span style="color: #000000; font-weight: bold;">/</span>options.pptpd
<span style="color: #c20cb9; font-weight: bold;">kill</span> <span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">ps</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> pptp <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">' '</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">1</span><span style="color: #000000; font-weight: bold;">`</span>
pptpd <span style="color: #660033;">-c</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>pptpd<span style="color: #000000; font-weight: bold;">/</span>pptpd.conf <span style="color: #660033;">-o</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>pptpd<span style="color: #000000; font-weight: bold;">/</span>options.pptpd</pre></div></div></li><li>Go to the <em>Management</em> subtab of <em>Administration</em> and at the bottom select <em>Reboot Router</em>.</li></ol><p>This script comes from the <a href="http://www.dd-wrt.com/wiki/index.php/PPTP_Server_Configuration" title="PPTP Server Configuration | DD-WRT Wiki">PPTP Server Configuration</a> page.  The bulk of it is from the <a href="http://www.dd-wrt.com/wiki/index.php/PPTP_Server_Configuration#iOS_4.3" title="PPTP Server Configuration | DD-WRT Wiki">iOS 4.3</a> heading with the addition of the <code>sed</code> line to <a href="http://www.dd-wrt.com/wiki/index.php/PPTP_Server_Configuration#Force_Encryption" title="PPTP Server Configuration | DD-WRT Wiki">force encryption</a>.</p><p><h2>Configuring the iOS Device</h2><br /><div id="attachment_3029" class="wp-caption alignright" style="width: 330px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><img src="http://cdn.dltj.org/wp-content/uploads/2011/06/IMG_0267.png" alt="iOS PPTP VPN Configuration" title="IMG_0267" width="320" height="480" class="size-full wp-image-3029" /><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">iOS PPTP VPN Configuration</p></div>The iOS device was pretty straight forward (particularly compared to the previous steps):</p><ol type="1" start="1"><li>In the <em>Settings</em> app, choose <em>General</em> then <em>Network</em> then <em>VPN</em>.</li><li>Select <em>Add VPN Configuration&#8230;</em></li><li>At the top choose <em>PPTP</em> and give this configuration a descriptive label.</li><li>For <em>Server</em> put in the IP address of your U-verse residential gateway.  (Setting up something like Dynamic DNS with DD-WRT is left as an exercise to the reader.)</li><li>For <em>Account</em> put in the username field from the CHAP-Secrets text box above.</li><li>Leave <em>RSA SecurID</em> off and put in the password field from the CHAP-Secrets text box.</li><li>Under <em>Encryption Level</em> select <em>Maximum</em>.</li><li>Select <em>Save</em> in the upper right hand corner.</li></ol><p>Now when you connect to a public network, before starting any applications that will access the internet, go into the <em>Settings</em> app and near the top will be a choice to turn on the VPN.  Give it about five or six seconds to make the connection, and you&#8217;ll then see a blue VPN icon in the status bar at the top next to the WiFi icon.</p><p><h2>Acknowledgements</h2><br />The <a href="http://www.dd-wrt.com/wiki/index.php/PPTP_Server_Configuration" title="PPTP Server Configuration | DD-WRT Wiki">PPTP Server Configuration</a> was much more helpful than the built in documentation for figuring out what was needed to make this work.  A series of posts on the Whirlpool Forums starting with <a href="http://forums.whirlpool.net.au/forum-replies.cfm?t=1260916&amp;p=2&amp;#r28" title="DD-WRT VPN / PPTP Server - Networking - Whirlpool Forums" class="broken_link" rel="nofollow">this reply</a> and continuing through a half-dozen more had the final pieces.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/pptp-uverse-ddwrt/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>Does the Google/Bing/Yahoo Schema.org Markup Promote Invalid HTML?</title><link>http://dltj.org/article/schema-org-invalid/</link> <comments>http://dltj.org/article/schema-org-invalid/#comments</comments> <pubDate>Fri, 03 Jun 2011 16:32:10 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[html]]></category> <category><![CDATA[html5]]></category> <category><![CDATA[microdata]]></category> <category><![CDATA[microformats]]></category> <category><![CDATA[schema.org]]></category><guid isPermaLink="false">http://dltj.org/?p=2920</guid> <description><![CDATA[[Update on 10-Jun-2011: The answer to the question of the title is "not really" -- see the update at the bottom of this post and the comments for more information.]Yesterday Google, Microsoft Bing, and Yahoo! announced a project to promote &#8230; <a href="http://dltj.org/article/schema-org-invalid/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=2920"></abbr><p>[Update on 10-Jun-2011: The answer to the question of the title is "not really" -- see the update at the bottom of this post and the comments for more information.]</p><p>Yesterday <a href="http://googleblog.blogspot.com/2011/06/introducing-schemaorg-search-engines.html" title="Official Google Blog: Introducing schema.org: Search engines come together for a richer web">Google</a>, <a href="http://www.bing.com/community/site_blogs/b/search/archive/2011/06/01/bing-google-and-yahoo-unite-to-build-the-web-of-objects.aspx" title="Bing Introducing Schema.org: Bing, Google and Yahoo Unite to Build the Web of Objects - Search Blog - Site Blogs - Bing Community">Microsoft Bing</a>, and <a href="http://www.ysearchblog.com/2011/06/02/introducing-schema-org-a-collaboration-on-structured-data/" title="Introducing schema.org: A Collaboration on Structured Data">Yahoo!</a> announced a <a href="http://schema.org/" title="schema.org - Home">project</a> to promote machine-readable markup for structured data on web pages.<br /><blockquote>Many sites are generated from structured data, which is often stored in databases. When this data is formatted into HTML, it becomes very difficult to recover the original structured data. Many applications, especially search engines, can benefit greatly from direct access to this structured data. On-page markup enables search engines to understand the information on web pages and provide richer search results in order to make it easier for users to find relevant information on the web. Markup can also enable new tools and applications that make use of the structure.<div style="text-align: right; width: 100%;"><cite>- <a href="http://schema.org/" title="schema.org homepage" rel="homepage">schema.org &#8211; Home</a></cite></div></blockquote><p> The problem is, I think, that the markup they describe on there site generates invalid HTML.  Did they really do this?</p><p>Take this example from the <a href="http://schema.org/Event" title="Event - schema.org">Event</a> description page:</p><div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;">&lt; !DOCTYPE html<span style="color: #000000; font-weight: bold;">&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;html</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://www.w3.org/1999/xhtml&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;head<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Test<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/head<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;body<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;div</span> itemscope <span style="color: #000066;">itemtype</span>=<span style="color: #ff0000;">&quot;http://schema.org/Event&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;a</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;url&quot;</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;nba-miami-philidelphia-game3.html&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
  NBA Eastern Conference First Round Playoff Tickets:
  Miami Heat at Philadelphia 76ers - Game 3 (Home Game 1)
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/a<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;time</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;startDate&quot;</span> <span style="color: #000066;">datetime</span>=<span style="color: #ff0000;">&quot;2011-04-21T20:00&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    Thu, 04/21/11
    8:00 p.m.
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/time<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;div</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;location&quot;</span> itemscope <span style="color: #000066;">itemtype</span>=<span style="color: #ff0000;">&quot;http://schema.org/Place&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;a</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;url&quot;</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;wells-fargo-center.html&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    Wells Fargo Center
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/a<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;div</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;address&quot;</span> itemscope <span style="color: #000066;">itemtype</span>=<span style="color: #ff0000;">&quot;http://schema.org/PostalAddress&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;span</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;addressLocality&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Philadelphia<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/span<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>,
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;span</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;addressRegion&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>PA<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/span<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/div<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/div<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;div</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;offers&quot;</span> itemscope <span style="color: #000066;">itemtype</span>=<span style="color: #ff0000;">&quot;http://schema.org/AggregateOffer&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    Priced from: <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;span</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;lowPrice&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>$35<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/span<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;span</span> <span style="color: #000066;">itemprop</span>=<span style="color: #ff0000;">&quot;offerCount&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>1,938<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/span<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> tickets left
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/div<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/div<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/body<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/html<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div><p>The problem is in the first &lt;div&gt; line and the attribute &#8216;itemscope&#8217; that has no value associated with it.  If you copy-and-paste that markup into the <a href="http://validator.w3.org/#validate_by_input" title="ec<br />The W3C Markup Validation Service">W3 validator</a> (using the &#8220;Validate by Direct Input&#8221; option and manually removing the space between the less-than sign and the exclamation point in the first line), it comes back with:</p><blockquote><p><em>Line 7, Column 16</em>: <strong>required character (found i) (expected =)</strong></p></blockquote><p>A bare attribute may be valid in some forms of HTML, but it certainly isn&#8217;t valid XML, and I think that will cause all sorts of problems down the line.  Does anyone else see this as an issue?</p><p><h2>Update</h2><br />I heard back from one of the keepers of W3C&#8217;s validator, and the <code>xmlns="http://www.w3.org/1999/xhtml"</code> attribute of the <code>html</code> tag was triggering the XML version of the validator.  The bare <code>itemscope</code> attribute is valid HTML but invalid XML (important for the XML serialization of HTML), but can be fixed by making it <code>itemscope="itemscope"</code>.  See the comments for more information.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/schema-org-invalid/feed/</wfw:commentRss> <slash:comments>14</slash:comments> </item> <item><title>&#8220;The Challenges of User Consent&#8221; &#8212; Handling Shibboleth User Attributes</title><link>http://dltj.org/article/shibboleth-user-attributes/</link> <comments>http://dltj.org/article/shibboleth-user-attributes/#comments</comments> <pubDate>Fri, 06 May 2011 20:51:38 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[privacy]]></category> <category><![CDATA[Shibboleth]]></category><guid isPermaLink="false">http://dltj.org/?p=2868</guid> <description><![CDATA[One of the great things about the Shibboleth inter-institution single sign-on software package is the ability for the Identity Provider to limit how much a Service Provider knows about a user&#8217;s request for service. (Not familiar with those capitalized terms? &#8230; <a href="http://dltj.org/article/shibboleth-user-attributes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=2868"></abbr><p>One of the great things about the <a href="http://shibboleth.internet2.edu/" title="Shibboleth homepage">Shibboleth</a> inter-institution single sign-on software package is the ability for the Identity Provider to limit how much a Service Provider knows about a user&#8217;s request for service.  (Not familiar with those capitalized terms?  Read on for definitions.)  But with this capability comes great flexibility, and with the flexibility can come lots of management overhead.  So I was intrigued to see the <a href="https://lists.internet2.edu/sympa/arc/shibboleth-announce/2011-04/msg00007.html" title="IAM Online May 11 - The Challenges of User Consent | shibboleth-announce mailing list">announcement</a> for an <a href="http://www.incommon.org/iamonline/" title="Identity and Access Management Online">online webinar</a> from the InCommon Shibboleth Federation with the title &#8220;The Challenges of User Consent&#8221; covering the issues of managing who gets access to what information about users.<br /><span id="more-2868"></span><br />From the webinar description:<br /><blockquote><p>Are you starting to see more requests from SPs seeking user attributes? Would you like to explore methods that would simplify the attribute release process? &nbsp;You aren’t alone. Campuses are seeking a scalable approach to managing attribute release that will minimize admin involvement and allow users to access sites like those that support collaborative work and want such attributes as EPPN, name, and email.</p><p>Automating the user consent procedure, combined with metadata-driven attribute release, provides an approach that greatly simplifies this process for all parties, and allows users to reach sites without delay.</p><p>Join us for a discussion and demonstration from Brown University and the University of Southern California.</p><p><strong>Host/Moderator: </strong>Tom Barton, University of Chicago and InCommon Technical Advisory Comittee</p><p><strong>Presenters:<br /> Steven Carmody</strong>, Brown University and InCommon TAC<br /><strong>Russ Beall</strong>, University of Southern California></p></blockquote><p>Lots more abbreviations and technical terms there, so here is a short primer:</p><dl><dt>Service Provider (SP)</dt><dd>A web server protected by Shibboleth that a user wants to access.</dd><dt>Identity Provider (IdP)</dt><dd>A web server that can authenticate a user (determine who the user is, typically with username/password) and store User Attributes.</dd><dt>User Attributes</dt><dd>Data about a user, including name, email address, affiliation status (student, employee, faculty, etc.), eduPersonPrincipalName, and TargetedIDs.</dd><dt>eduPersonPrincipalName (EPPN)</dt><dd>A string in the form of <i>user</i>@<i>domain</i> that uniquely identifies the user at an Identity Provider.  (<a href="http://www.incommonfederation.org/attributesummary.html#eduPersonPrincipal" title="Attribute Summary | InCommon">InCommon technical definition</a>)</dd><dt>TargetedID</dt><dd>An opaque string stored/generated by the Identity Provider that is unique to each user and Service Provider pair.  Passed as a User Attribute between the Identity Provider and the Service Provider, it can facilitate long-term user sessions at the Service Provider without revealing the identity of the user.</dd></dl><p>This is all stuff that as librarians we should be concerned about.  Arguably, a Service Provider should only have enough information to satisfy the demands of a license agreement, and in most cases those demands can be satisfied with an assertion that a user is of a proper affiliation with a library (e.g. &#8220;patron&#8221; or &#8220;student&#8221; or &#8220;employee&#8221; or simply &#8220;member&#8221;).  It is baked into the Shibboleth trust model that the Service Provider will honor the User Attributes presented by the Identity Provider.</p><p>What makes the announcement of this webinar interesting is that Service Providers seem to be asking for the non-opaque eduPersonPrincipalName attribute.  I&#8217;ve long thought that TargetedID &#8212; an opaque/random string shared between the Identity Provider and Service Provider &#8212; is a much better answer to enabling privacy for functions like marked-item-lists, relevance ranking based on user search history, and other services that are unique to an individual.  Because TargetedID doesn&#8217;t give away the person&#8217;s identity yet is guaranteed by the IdP to be unique to one person at one SP, it is ideal for situations when the SP doesn&#8217;t really need to know exactly <em>who</em> is making the request.  (Sure, if a user coming to an SP with a TargetedID then gives the SP his/her name or e-mail address, then that person is no longer anonymous but that was a choice the user made.)</p><p>So I&#8217;m planning on tuning in next Wednesday to get caugh up on what is happening with User Attributes in Shibboleth-land.  If you care about this kind of stuff, perhaps you can join me, too.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/shibboleth-user-attributes/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Recordings from Code4Lib Virtual Lightning Talks Available</title><link>http://dltj.org/article/code4lib-virtual-lightning-talk-recordings/</link> <comments>http://dltj.org/article/code4lib-virtual-lightning-talk-recordings/#comments</comments> <pubDate>Mon, 02 May 2011 18:56:41 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[code4lib]]></category> <category><![CDATA[eprints]]></category> <category><![CDATA[MARC]]></category> <category><![CDATA[solr]]></category> <category><![CDATA[vufind]]></category><guid isPermaLink="false">http://dltj.org/?p=2849</guid> <description><![CDATA[Thanks to everyone for participating in the first Code4Lib Virtual Lightning Talks on Friday. In particular, my gratitude goes out to Ed Corrado, Luciano Ramalho, Michael Appleby, and Jay Luker being the first presenters to try this scheme for connecting &#8230; <a href="http://dltj.org/article/code4lib-virtual-lightning-talk-recordings/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=2849"></abbr><p>Thanks to everyone for participating in the first <a href="http://wiki.code4lib.org/index.php/Virtual_Lightning_Talks" title="Virtual Lightning Talks | Code4Lib">Code4Lib Virtual Lightning Talks</a> on Friday.  In particular, my gratitude goes out to Ed Corrado, Luciano Ramalho, Michael Appleby, and Jay Luker being the first presenters to try this scheme for connecting library technologists.  My apologies also to those who couldn&#8217;t connect, in particular to Elias Tzoc Caniz who had signed up but found himself locked out by a simultaneous user count in the presentation system.  Recordings of the presentation audio and screen capture video <a href="http://www.archive.org/search.php?query=subject%3A%22Code4Lib%20Virtual%20Lightning%20Talks%22" title="Search for &#038;039;Code4Lib Virtual Lightning Talks&#038;039; in the Internet Archive">are now up in the Internet Archive</a>.</p><table><tr style="text-align: left;"><th>Name</th><th> Topic</th></tr><tr><td> Edward M. Corrado</td><td> <a href="http://www.archive.org/details/CodaboxUsingE-printsForASmallScalePersonalRepository" title="Recording of CodaBox: Using E-Prints for a small scale personal repository">CodaBox: Using E-Prints for a small scale personal repository</a></td></tr><tr><td> Luciano Ramalho</td><td> <a href="http://www.archive.org/details/Marc-dmAJavascriptApiForIndexingMarc-jsonRecordsInCouchdb" title="Recording of MARC-DM: a JavaScript API for indexing MARC-JSON records in CouchDB">MARC-DM: a JavaScript API for indexing MARC-JSON records in CouchDB</a></td></tr><tr><td> Michael Appleby</td><td> <a href="http://www.archive.org/details/ExtendingVufindForCross-collectionSearch" title="Recording of Extending VuFind for cross-collection search">Extending VuFind for cross-collection search</a></td></tr><tr><td> Jay Luker</td><td> <a href="http://www.archive.org/details/ExtendingSolrsDefaultSimilarityScoringForLongerFulltextDocuments" title="Recording of Extending Solr's default Similarity scoring for longer, fulltext documents">Extending Solr&#8217;s default Similarity scoring for longer, fulltext documents</a></td></tr></table><p><h2>Lessons Learned</h2><br />First, people were locked out when they shouldn&#8217;t have been.  The most we saw online at any particular time as 25, but the room was supposed to be able to hold 60.  I think the problem was how I entered e-mail addresses into the system to reserve slots for the presenters and the people who signed up in advance.  (Which obviously didn&#8217;t work because one of the presenters and at least one of the attendees who signed up in advance didn&#8217;t get in.)  Should we do this again (see below) I&#8217;ll try to debug the problem.</p><p>Second, some comments I got were about cranky Java applets and applications.  LYRASIS has two conference tools at its disposal &#8212; Java-based Centra and Flash-based Acrobat Connect &#8212; and I chose Centra because running Flash on LINUX is an issue.  Maybe this will need to be revisited (or maybe there is another Java-based conference system that can do better).</p><p>Third, since we were not limited by space and other timing constraints, can the five-minutes-per-presenter limit be relaxed?  I have mixed feelings about this; I think defined time limits promote better presentations, but the four presentations this first go-around went to the end of the five minute time limit and there was no opportunity for questions or audience interaction.</p><p>On the whole, it seemed like a positive experience from my perspective and from that of the feedback I&#8217;ve received so far.  I&#8217;m going to start a conversation thread in <a href="http://groups.google.com/group/code4libcon?pli=1" title="code4libcon | Google Groups">Code4LibCon</a> (where all of the Code4Lib meeting planning discussion takes place) to see if it is worthwhile to do again and to identify what should be done differently.  If you are interested, please consider joining and contributing to the discussion.  Or e-mail me privately and I&#8217;ll reflect your comments into the group discussion.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/code4lib-virtual-lightning-talk-recordings/feed/</wfw:commentRss> <slash:comments>9</slash:comments> </item> <item><title>What To Do With ISO 2709:2008?</title><link>http://dltj.org/article/iso-2709/</link> <comments>http://dltj.org/article/iso-2709/#comments</comments> <pubDate>Wed, 27 Apr 2011 01:43:48 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[ISO2709]]></category> <category><![CDATA[MARC]]></category> <category><![CDATA[National Information Standards Organization]]></category> <category><![CDATA[standards]]></category><guid isPermaLink="false">http://dltj.org/?p=2822</guid> <description><![CDATA[My employer recently became a member of NISO and I was made the primary representative. This is my first formal interaction with the standards organization heirarchy (NISO &#8594; ANSI &#8594; ISO) and as one of the side effects I&#8217;m being &#8230; <a href="http://dltj.org/article/iso-2709/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/?p=2822"></abbr><div><p>My employer recently became a member of NISO and I was made the primary representative.  This is my first formal interaction with the standards organization heirarchy (<abbr title="National Information Standards Organization">NISO</abbr> &rarr; <abbr title="American National Standards Institute">ANSI</abbr> &rarr; <abbr title="International Standards Organization">ISO</abbr>) and as one of the side effects I&#8217;m being asked to provide advice to NISO on how its vote should be cast on relevant ISO ballots.  Much of it has been pretty routine so far, but today one jumped out at me &#8212; the systematic review for the standard <a href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=41319" title="ISO 2709:2008 - Information and documentation -- Format for information exchange">ISO 2709:2008</a>, otherwise blandly known as <a href="http://en.wikipedia.org/wiki/ISO_2709" title="ISO 2709 - Wikipedia, the free encyclopedia">Information and documentation — Format for information exchange</a>.  You might know it as the underlying structure of MARC.  (Though, to describe it accurately, MARC is a subset or profile of ISO 2709.)  And the voting options are: Confirm (as is), Revise/Amend, Withdraw (the standard), or Abstain (from the vote).<br /><span id="more-2822"></span><br /><h2>What is ISO 2709?</h2><br />The scope statement of the standard is:<br /><blockquote><p>This International Standard specifies the requirements for a generalized exchange format which will hold records describing all forms of material capable of bibliographic description as well as other types of records. It does not define the length or the content of individual records and does not assign any meaning to tags, indicators or identifiers, these specifications being the functions of an implementation format.</p><p>This International Standard describes a generalized structure, a framework designed specially for communications between data processing systems and not for use as a processing format within systems.</p></blockquote><p> The <a href="http://en.wikipedia.org/wiki/ISO_2709" title="ISO 2709 | Wikipedia">Wikipedia page for ISO 2709</a> pretty much sums up what is in the standard itself without all of the gory definitions and details, and if you are used to dealing with MARC records, it&#8217;ll look familiar.</p><p>According to the documentation I can find, ISO 2709 was last revised in 2008 when it was &#8220;technically revised to incorporate specification of the use of ISO/IEC 10646 using 8-bit Unicode Transformation Format (UTF-8) encoding.&#8221;  The ballot in play now is a &#8220;systematic review&#8221;<sup><a href="http://dltj.org/article/iso-2709/#footnote_0_2822" id="identifier_0_2822" class="footnote-link footnote-identifier-link" title="&amp;#8220;In addition to the continuous maintenance of the standard described above, a comprehensive review of a database standard at regular intervals may be necessary which is organized in accordance with the rules in the ISO/IEC Directives and the ISO Supplement for the systematic review process.&amp;#8221; Procedure for the development and maintenance of standards in database format. Annex ST of the ISO supplement to the ISO/IEC Directives.">1</a></sup> of the 2008 revision of the standard.</p><p><h2>What are my choices again?</h2><br />As a member of NISO, I can cast an advisory vote to recommend how NISO &#8212; the U.S. representative to ISO for this <a href="http://www.iso.org/iso/iso_technical_committee.html?commid=48798" title="ISO - Technical committees - TC 46/SC 4 - Technical interoperability">technical committee</a> &#8212; casts it single vote among all of the voting countries of this technical committee.  And in my capacity as a NISO member, I can vote to confirm the standard, revise it, or ask that it be withdrawn.  And so here is my quandry.  As a standard for &#8220;generalized exchange format which will hold records describing all forms of material capable of bibliographic description&#8221; it works okay, but I think it is hard to argue with the fact that information exchange formats have moved well beyond this sort of format.  (My favorite interchange format is XML, but there are some that advocate now for JSON as a universal exchange format.)</p><p>So here is where I need help.  Should I vote to confirm the <i>status quo</i>?  Or should I vote to revise/amend with a comment that says it is time to take this interchange format into XML, and in doing so set a path for the eventual deprecation of what we know as ISO 2709:2008?  Should I take the bold step and vote to withdraw the standard (which itself seems extreme given its current wide use in the library and closely related fields)?</p><p>What would you do with ISO 2709?</p></div><h2>Footnotes</h2><ol class="footnotes"><li id="footnote_0_2822" class="footnote">&#8220;In addition to the continuous maintenance of the standard described above, a comprehensive review of a database standard at regular intervals may be necessary which is organized in accordance with the rules in the ISO/IEC Directives and the ISO Supplement for the systematic review process.&#8221; <a href="http://www.iso.org/sites/ConsumersStandards/en/pdf/ISO%20Supplement%20-%20Annex%20.pdf" title="http://www.iso.org/sites/ConsumersStandards/en/pdf/ISO%20Supplement%20-%20Annex%20.pdf" class="broken_link" rel="nofollow">Procedure for the development and maintenance of standards in database format</a>. Annex ST of the <a href="http://www.iso.org/directives" title="ISO/IEC Directives and ISO supplement ">ISO supplement to the ISO/IEC Directives</a>.</li></ol>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/iso-2709/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> </channel> </rss>
<!-- Served from: dltj.org @ 2012-02-11 14:02:25 by W3 Total Cache -->
