Dan Scott / +Dan Scott
Systems Librarian, Laurentian University
Authoritative single source for institutional metadata
Built-in Web services distribute Registry data across the Web, enhancing Web discovery of your content and services
[SEO] is a valid practice which seeks to improve technical and content aspects of a website, making the content easier to find, relevant, and more accessible to the search engine crawlers.
Grant me the serenity to accept the things I cannot change,
Courage to change the things I can,
And wisdom to know the difference.
Reinhold Niebuhr via Sinead O'Connor
Take care of the basics first!
robots.txt
@class
attributes, and CSS.
http://catalogue.example.com/search?term=fish
http://catalogue.example.com/search?term=fishes
http://catalogue.example.com/search?term=fishing
Search engines will repeatedly crawl variants of these.
Block them!
User-agent: *
Disallow: /search/
User-agent: *
Disallow: /
This is not a good thing to see on your site.
You're telling search engines you don't want to be found.
http://example.com/about
2015-01-29
http://example.com/hours
2015-01-25
Just add a Sitemap:
line to your robots.txt
file:
Sitemap: https://example.ca/sitemapindex.xml
Even clean HTML is still just a bag of words (and media) to machines.
My local library branch page contains:
Scope refers to the contents of a given HTML element, including all of its child elements.
<body>
</body>
@vocab
attribute specifies the default vocabulary<body>
element
<body vocab="http://schema.org/">
...
</body>
@typeof
element identifies the type you're describing<body>
element, too
<body vocab="http://schema.org/" typeof="Library">
...
</body>
name
is used for everything: people, organizations, book and movie titles...@property
attribute:
<body vocab="http://schema.org/" typeof="Library">
...
South End Library
...
</body>
<body vocab="http://schema.org/" typeof="Library">
...
South End Library
...
</body>
schema.org does not require logo
and url
properties on Library, but Google expects them
<body vocab="http://schema.org/" typeof="Library">
...
...
South End Library
...
</body>
But the page lives at a URL!you might be thinking
url
helps uniquely identify them.
<body vocab="http://schema.org/" typeof="Library">
...
...
South End Library
...
South End Library
...
</body>
@property
takes the value of the child text nodes:
OneTwo
keywords
gets "OneTwo"@href
or @src
is on the same element, the property gets that value instead:
Library name
url
gets "/example" and image
gets "/example.png"
<body vocab="http://schema.org/" typeof="Library">
1991 Regent Street
Sudbury, ON P3E 5V3
Phone: (705) 688-3950
Fax: (705) 522-7788
</body>
span
tag:
<body vocab="http://schema.org/" typeof="Library">
1991 Regent Street
Sudbury, ON P3E 5V3
Phone: (705) 688-3950
Fax: (705) 522-7788
</body>
span
tags required again:
<body vocab="http://schema.org/" typeof="Library">
1991 Regent Street
Sudbury, ON P3E 5V3
Phone: (705) 688-3950
Fax: (705) 522-7788
</body>
@typeof=
PostalAddress declaration:
<body vocab="http://schema.org/" typeof="Library">
1991 Regent Street
Sudbury, ON P3E 5V3
Phone: (705) 688-3950
Fax: (705) 522-7788
</body>
<body vocab="http://schema.org/" typeof="Library">
1991 Regent Street
Sudbury,
ON
P3E 5V3
Phone: (705) 688-3950
Fax: (705) 522-7788
</body>
@href
hh:mm:ss
formatted times supplied by @datetime
<body vocab="http://schema.org/" typeof="Library">
<tr property="openingHoursSpecification" typeof="OpeningHoursSpecification">
<td property="dayOfWeek" href="http://purl.org/goodrelations/v1#Sunday">
Sunday**</td>
<td>
- </td>
</tr>
</body>
<body vocab="http://schema.org/" typeof="Library">
...
...
</body>
Family - Story Time @ South End Library
Description: Develop your child's appreciation of language, rhythm and imagination through storytelling, puppetry, songs, finger plays and rhymes.
Date: Thursday - January 15 2015
Time: 10:30 AM - 11:30 AM
Location: South Branch
Program Type: Family
Series: Thursdays, 09-18-2014 to 12-11-2014, 10:30AM - 11:30AM
Public Note: Free! Children under 12 must be accompanied by a parent or guardian at all times while in the library.
30 Seats Remaining
@typeof
ChildrensEvent, then add the basic name and description properties:
Family - Story Time @ South End Library
Description: Develop your child's appreciation of language, rhythm and imagination through storytelling, puppetry, songs, finger plays and rhymes.
Date: Thursday - January 15 2015
Time: 10:30 AM - 11:30 AM
Location: South Branch
Program Type: Family
Public Note: Free! Children under 12 must be accompanied by a parent or guardian at all times while in the library.
30 Seats Remaining
@property
attribute
Family - Story Time @ South End Library
Description: Develop your child's appreciation of language, rhythm and imagination through storytelling, puppetry, songs, finger plays and rhymes.
Date: Thursday - January 15 2015
Time: 10:30 AM - 11:30 AM
Location: South Branch
Program Type: Family
Public Note: Free! Children under 12 must be accompanied by a parent or guardian at all times while in the library.
30 Seats Remaining
time
element with a datetime
property to express them
Family - Story Time @ South End Library
Description: Develop your child's appreciation of language, rhythm and imagination through storytelling, puppetry, songs, finger plays and rhymes.
Date: Thursday - January 15 2015
Time:
-
Location: South Branch
Program Type: Family
Public Note: Free! Children under 12 must be accompanied by a parent or guardian at all times while in the library.
30 Seats Remaining
Family - Story Time @ South End Library
Description: Develop your child's appreciation of language, rhythm and imagination through storytelling, puppetry, songs, finger plays and rhymes.
Date: Thursday - January 15 2015
Time:
-
Location: South Branch
Program Type: Family
Public Note: Free! Children under 12 must be accompanied by a parent or guardian at all times while in the library.
30 Seats Remaining