Home | Index

SearchMonkey Guide

Appendix B. SearchMonkey vocabularies

Table of Contents

Overview
Intro
About the Examples
Defining New Classes and Properties
OWL Definitions
Predefined Prefixes
Datatypes
Examples
Business Addresses and Reviews
Components
Simple Local Listing Example
Advanced Local Listing Example
Personal Profiles and Social Networks
Components
Simple Social Profile Example
Advanced Social Profile Example
Friend-Of-A-Friend
Intro
Overview
Reference
foaf:Agent
foaf:Document
foaf:Group
foaf:Image
foaf:OnlineAccount
foaf:OnlineChatAccount
foaf:OnlineEcommerceAccount
foaf:OnlineGamingAccount
foaf:Organization
foaf:Person
foaf:PersonalProfileDocument
foaf:Project
foaf:accountName
foaf:accountServiceHomepage
foaf:aimChatID
foaf:based_near
foaf:birthday
foaf:currentProject
foaf:depiction
foaf:depicts
foaf:dnaChecksum
foaf:family_name
foaf:firstName
foaf:fundedBy
foaf:geekcode
foaf:gender
foaf:givenname
foaf:holdsAccount
foaf:homepage
foaf:icqChatID
foaf:img
foaf:interest
foaf:isPrimaryTopicOf
foaf:jabberID
foaf:knows
foaf:logo
foaf:made
foaf:maker
foaf:mbox
foaf:mbox_sha1sum
foaf:member
foaf:msnChatID
foaf:myersBriggs
foaf:name
foaf:nick
foaf:openid
foaf:page
foaf:pastProject
foaf:phone
foaf:plan
foaf:primaryTopic
foaf:publications
foaf:schoolHomepage
foaf:sha1
foaf:surname
foaf:theme
foaf:thumbnail
foaf:tipjar
foaf:title
foaf:topic
foaf:topic_interest
foaf:weblog
foaf:workInfoHomepage
foaf:workplaceHomepage
foaf:yahooChatID
GoodRelations
Intro
Overview
Reference
gr:AcceptedPaymentMethods
gr:ActualProductOrServiceInstance
gr:AvailableDeliveryMethods
gr:BusinessEntity
gr:BusinessEntityType
gr:BusinessFunction
gr:DayOfWeek
gr:DeliveryChargeSpecification
gr:DeliveryMethod
gr:DeliveryModeParcelService
gr:LocationOfSalesOrServiceProvisioning
gr:N-Ary-Relations
gr:Offering
gr:OpeningHoursSpecification
gr:PaymentChargeSpecification
gr:PaymentMethod
gr:PaymentMethodCreditCard
gr:PriceSpecification
gr:ProductOrService
gr:ProductOrServiceModel
gr:ProductOrServicesSomeInstancesPlaceholder
gr:QualitativeValue
gr:QuantitativeValue
gr:QuantitativeValueFloat
gr:QuantitativeValueInteger
gr:TypeAndQuantityNode
gr:UnitPriceSpecification
gr:WarrantyPromise
gr:WarrantyScope
gr:acceptedPaymentMethods
gr:amountOfThisGood
gr:appliesToDeliveryMethod
gr:appliesToPaymentMethod
gr:availableAtOrFrom
gr:availableDeliveryMethods
gr:closes
gr:datatypeProductOrServiceProperty
gr:description
gr:durationOfWarrantyInMonths
gr:eligibleCustomerTypes
gr:eligibleRegions
gr:hasBusinessFunction
gr:hasCurrency
gr:hasCurrencyValue
gr:hasDUNS
gr:hasEAN_UCC-13
gr:hasEligibleQuantity
gr:hasGTIN-14
gr:hasGlobalLocationNumber
gr:hasMakeAndModel
gr:hasMaxCurrencyValue
gr:hasMaxValue
gr:hasMaxValueFloat
gr:hasMaxValueInteger
gr:hasMinCurrencyValue
gr:hasMinValue
gr:hasMinValueFloat
gr:hasMinValueInteger
gr:hasOpeningHoursDayOfWeek
gr:hasPriceSpecification
gr:hasUnitOfMeasurement
gr:hasValueFloat
gr:hasValueInteger
gr:hasWarrantyPromise
gr:hasWarrantyScope
gr:includesObject
gr:isAccessoryOrSparePartFor
gr:isConsumableFor
gr:isListPrice
gr:isSimilarTo
gr:legalName
gr:offers
gr:opens
gr:qualitativeProductOrServiceProperty
gr:quantitativeProductOrServiceProperty
gr:typeOfGood
gr:validFrom
gr:validThrough
gr:valueAddedTaxIncluded
hReview
Intro
Overview
Reference
review:Comment
review:Feedback
review:Review
review:commenter
review:hasComment
review:hasFeedback
review:hasReview
review:positiveVotes
review:rating
review:reviewer
review:text
review:title
review:totalVotes
review:type
SearchMonkey Actions
Intro
Overview
Reference
action:addFriend
action:append
action:checkAvailability
action:compare
action:delete
action:discuss
action:edit
action:give
action:locateStore
action:map
action:notify
action:perform
action:procure
action:readDocumentation
action:reserve
action:sendEmail
action:sendToPhone
action:viewHistory
action:viewImages
SearchMonkey Commerce
Intro
Overview
Reference
commerce:Business
commerce:Hotel
commerce:Restaurant
commerce:acceptsCredit
commerce:accessibility
commerce:ambience
commerce:attire
commerce:businessCategory
commerce:corkage
commerce:cuisine
commerce:features
commerce:hoursOfOperation
commerce:mealOptions
commerce:parkingOptions
commerce:priceRange
commerce:priceRangeHighest
commerce:priceRangeLowest
commerce:seatingOptions
commerce:serviceOptions
commerce:smoking
commerce:takesReservations
SearchMonkey Feeds
Intro
Overview
Reference
feed:Entry
feed:Feed
feed:hasEntry
SearchMonkey Jobs
Intro
Overview
Reference
job:JobListing
job:degree
job:duration
job:experience
job:expires
job:function
job:hireType
job:industry
job:location
job:published
job:salaryFrom
job:salaryTo
job:salaryType
SearchMonkey Media
Intro
Overview
Reference
media:Article
media:Audio
media:Image
media:Media
media:Photo
media:Photoset
media:Text
media:Thumbnail
media:Video
media:Videoset
media:audio
media:bitrate
media:channels
media:duration
media:fileSize
media:framerate
media:height
media:image
media:region
media:samplingrate
media:thumbnail
media:type
media:video
media:views
media:width
SearchMonkey Product
Intro
Overview
Reference
product:Flight
product:Product
product:Service
product:availability
product:brand
product:category
product:color
product:condition
product:height
product:identifier
product:invoice
product:length
product:listPrice
product:manufacturer
product:maxInvoice
product:maxMSRP
product:minInvoice
product:minMSRP
product:msrp
product:priceFrom
product:priceTo
product:shippingCost
product:shippingWeight
product:weight
product:width
SearchMonkey Resume
Intro
Overview
Reference
resume:Resume
resume:contact
resume:duration
resume:education
resume:experience
resume:org
resume:summary
SIOC
Intro
Overview
Reference
sioc:Community
sioc:Container
sioc:Forum
sioc:Item
sioc:Post
sioc:Role
sioc:Site
sioc:Space
sioc:Thread
sioc:User
sioc:Usergroup
sioc:about
sioc:account_of
sioc:administrator_of
sioc:attachment
sioc:avatar
sioc:container_of
sioc:content
sioc:content_encoded
sioc:created_at
sioc:creator_of
sioc:description
sioc:email
sioc:email_sha1
sioc:feed
sioc:first_name
sioc:function_of
sioc:has_administrator
sioc:has_container
sioc:has_creator
sioc:has_function
sioc:has_host
sioc:has_member
sioc:has_moderator
sioc:has_modifier
sioc:has_owner
sioc:has_parent
sioc:has_part
sioc:has_reply
sioc:has_scope
sioc:has_space
sioc:has_subscriber
sioc:has_usergroup
sioc:host_of
sioc:id
sioc:ip_address
sioc:last_name
sioc:link
sioc:links_to
sioc:member_of
sioc:moderator_of
sioc:modified_at
sioc:modifier_of
sioc:name
sioc:next_by_date
sioc:next_version
sioc:note
sioc:num_replies
sioc:num_views
sioc:owner_of
sioc:parent_of
sioc:part_of
sioc:previous_by_date
sioc:previous_version
sioc:reference
sioc:related_to
sioc:reply_of
sioc:scope_of
sioc:sibling
sioc:space_of
sioc:subject
sioc:subscriber_of
sioc:title
sioc:topic
sioc:usergroup_of
VCalendar
Intro
Overview
Reference
vcal:Valarm
vcal:Vevent
vcal:Vfreebusy
vcal:Vjournal
vcal:Vtimezone
vcal:Vtodo
vcal:List_of_Float
vcal:Value_DURATION
vcal:Value_PERIOD
vcal:Value_CAL-ADDRESS
vcal:DomainOf_rrule
vcal:Value_RECUR
vcal:Value_DATE
vcal:Vcalendar
vcal:X-
vcal:action
vcal:altrep
vcal:attach
vcal:attendee
vcal:byday
vcal:byhour
vcal:byminute
vcal:bymonth
vcal:bysecond
vcal:bysetpos
vcal:byweekno
vcal:byyearday
vcal:calAddress
vcal:calscale
vcal:categories
vcal:class
vcal:cn
vcal:comment
vcal:completed
vcal:component
vcal:contact
vcal:count
vcal:created
vcal:cutype
vcal:daylight
vcal:delegatedFrom
vcal:delegatedTo
vcal:description
vcal:dir
vcal:dtend
vcal:dtstamp
vcal:dtstart
vcal:due
vcal:duration
vcal:encoding
vcal:exdate
vcal:exrule
vcal:fbtype
vcal:fmttype
vcal:freebusy
vcal:freq
vcal:geo
vcal:interval
vcal:language
vcal:lastModified
vcal:location
vcal:member
vcal:method
vcal:organizer
vcal:partstat
vcal:percentComplete
vcal:priority
vcal:prodid
vcal:range
vcal:rdate
vcal:recurrenceId
vcal:related
vcal:relatedTo
vcal:reltype
vcal:repeat
vcal:requestStatus
vcal:resources
vcal:role
vcal:rrule
vcal:rsvp
vcal:sentBy
vcal:sequence
vcal:standard
vcal:status
vcal:summary
vcal:transp
vcal:trigger
vcal:tzid
vcal:tzname
vcal:tzoffsetfrom
vcal:tzoffsetto
vcal:tzurl
vcal:uid
vcal:until
vcal:url
vcal:version
vcal:wkst
VCard
Intro
Overview
Reference
vcard:Address
vcard:Geo
vcard:Name
vcard:Organization
vcard:VCard
vcard:additional-name
vcard:adr
vcard:agent
vcard:bday
vcard:category
vcard:class
vcard:country-name
vcard:email
vcard:extended-address
vcard:family-name
vcard:fax
vcard:fn
vcard:geo
vcard:given-name
vcard:homeAdr
vcard:homeTel
vcard:honorific-prefix
vcard:honorific-suffix
vcard:key
vcard:label
vcard:latitude
vcard:locality
vcard:logo
vcard:longitude
vcard:mailer
vcard:mobileEmail
vcard:mobileTel
vcard:n
vcard:note
vcard:org
vcard:organization-name
vcard:organization-unit
vcard:personalEmail
vcard:photo
vcard:post-office-box
vcard:postal-code
vcard:region
vcard:rev
vcard:role
vcard:sort-string
vcard:sound
vcard:street-address
vcard:tel
vcard:title
vcard:tz
vcard:uid
vcard:unlabeledAdr
vcard:unlabeledEmail
vcard:unlabeledTel
vcard:url
vcard:workAdr
vcard:workEmail
vcard:workTel
The rel Vocabulary (Deprecated)

Overview

Intro

The SearchMonkey vocabularies is a collection of vocabularies that we recommend using in DataRSS feeds and for annotating pages with metadata. Each vocabulary includes a set of terms and classes that are common for a particular domain. The set of vocabularies includes well-established RDF vocabularies as well as RDF vocabularies for microformats such as hCard, hCalendar and hReview. The vocabulary set also includes vocabularies developed specifically for SearchMonkey.

The following table lists the standard vocabularies recommended to be used in SearchMonkey applications. The documentation for some of these vocabularies is reproduced in this guide for convenience.

Vocabulary prefix Vocabulary name Domain Documentation
dc Dublin Core Document metadata See documentation on the web.
foaf Friend-Of-A-Friend Personal profiles and social networks See included documentation.
vcard VCard Personal and business addresses See included documentation.
vcal VCalendar Events and other calendar items See included documentation.
review hReview Reviews See included documentation.
sioc SIOC Blogs, discussion forums, Q&A sites See included documentation.
gr GoodRelations Product price specification, delivery and payment etc. See included documentation.
dbpedia DBPedia Generic vocabulary See documentation on the web.
fb Freebase Generic vocabulary See documentation on the web.

These vocabularies are intended to help developers to get started. However, this selection is not exclusive: you can provide data using other vocabularies. See Defining New Properties for more information.

The section Predefined Prefixes gives an overview of the recommended vocabularies. In dataRSS feeds, these vocabularies do not need to be explicitly declared if you place the following processing instruction at the beginning of a dataRSS feed:

<?profile http://search.yahoo.com/searchmonkey-profile ?>

In pages with embedded RDF metadata (eRDF and RDFa), each vocabulary needs to be declared using the appropriate constructs, i.e. LINK elements in eRDF and XML namespace declarations in RDFa.

In section Examples we list a number of examples of using these vocabularies in DataRSS.

This specification is on a periodic release schedule to improve conformance to industry standard vocabularies and enable common use cases to be accomplished in a consistent manner.

About the Examples

In the following we include some examples of representing data in DataRSS format from different domains. (We ignore the Atom headers for brevity). As DataRSS follows the RDFa standard, these examples can be directly translated to annotations in HTML by applying the same attributes (rel, property, typeof, resource) to HTML elements, following the same nesting as in the examples.

As an example, consider the following snippet of dataRSS:

          <y:item rel="dc:subject">
            <y:type typeof="foaf:Person>
              <y:meta property="foaf:name">John Doe</y:meta>
              <y:item rel="foaf:homepage" resource="http://www.joeisageek.com"/>
              <y:item rel="foaf:knows">
                <type typeof="foaf:Person">
                  <y:meta property="foaf:name">Jane Doe</y:meta>
                  <y:meta property="foaf:gender">female</y:meta>
                  <y:item rel="foaf:mbox" resource="mailto:janedoe@example.org"/>
                </type>
              </y:item>
            </y:type>
          </y:item>
        

This can be directly embedded inside HTML by applying the attribues to non-display HTML elements such as SPAN and DIV:

          <span rel="dc:subject">
            <span typeof="foaf:Person>
              <span property="foaf:name">John Doe</span>
              <span rel="foaf:homepage" resource="http://www.joeisageek.com"/>
              <span rel="foaf:knows">
                <span typeof="foaf:Person">
                  <span property="foaf:name">Jane Doe</span>
                  <span property="foaf:gender">female</span>
                  <span rel="foaf:mbox" resource="mailto:janedoe@example.org"/>
                </span>
              </span>
            </span>
          </span>
        

Note that RDFa provides additional attributes that make it easier to add markup to existing pages by reusing semantic-bearing HTML elements. For example, in the above case both the name and homepage can be provided using the HTML <a> tag:

          <a  rel="foaf:homepage" href="http://www.joeisageek.com" property="foaf:name" >John Doe</a>
        

See the RDFa Primer for more details.

Defining New Classes and Properties

There will probably be times when the kinds of metadata you'd like to extract isn't found in the searchmonkey-profile vocabulary reference. It might be an existing RDF vocabulary, or something you needed to make up by yourself.

For example, suppose your metadata is about digital cameras and in particular you would like to represent the number of megapixels a digital camera can handle. Let's assume you have created an RDF or OWL ontology and defined the term DigitalCamera and the property megapixels, both with a namespace http://example.com/vocab/digicam#. You are encouraged to publish your schema at this same location so that others can consult the definition of your newly created term.

The declaration and use of your terms in combination with the existing class product:Product would look like this:

<y:adjunct id="1.0" name="plisting" xmlns:digicam="http://example.com/vocab/digicam#">
  <y:item rel="product:Product">
     <y:item rel="rdf:type" resource="http://example.com/vocab/digicam#DigitalCamera"/>
     <y:meta prop="digicam:megapixels">7.2</y:meta>
  </y:item>
</y:adjunct>

OWL Definitions

Use the links below to download the OWL definitions of the SearchMonkey vocabularies.

  • searchmonkey-action.owl: Performs an action, links to a process or task, or sends notifications to you within a domain of information. For example: appending information to a blog, comparing prices of items, and sending email to a mobile device. More information.

  • searchmonkey-commerce.owl: Displays various information collected about businesses. For example: name of business, location, type of business, features of the business, payment options, ratings, etc. More information.

  • searchmonkey-feed.owl: Displays information from a information channel or feed from a network system. For example: if there are any entries in the feed, what type of feed, and the Feed itself. More information.

  • searchmonkey-job.owl: Displays information typically found in a businesses job descriptions or recruitment postings. For example: title, position descripition, pay range, education level, etc. More information.

  • searchmonkey-media.owl: Displays detailed information on various media types, features, specifications, and items. For example: music, photographs, video, text, and other media collections, etc. More information.

  • searchmonkey-product.owl: Displays detailed information about a product or manufacturer when searching for or ordering an item. For example: commercial or other, product weight, manufacturer name, product name, source comparisons, shipping costs, etc. More information.

  • searchmonkey-resume.owl: Displays information from a personal resume or curriculum vitae. For example: name, address, position title, job duties and responsibilities, dates of employment, education, etc. More information.

Click here for more Yahoo! published OWL vocabulary definitions.

Predefined Prefixes

The following table lists the prefixes that are predefined for DataRSS feeds. Namespacesthat are not included in this table need to be explicitly defined. It is also an error to redefine any of these namespaces.

Prefix Name Namespace
abmeta AB Meta http://www.abmeta.org/ns#
action SearchMonkey Actions http://search.yahoo.com/searchmonkey/action/
assert SearchMonkey Assertions (deprecated) http://search.yahoo.com/searchmonkey/assert/
cc Creative Commons http://creativecommons.org/ns#
commerce SearchMonkey Commerce http://search.yahoo.com/searchmonkey/commerce/
context SearchMonkey Context (deprecated) http://search.yahoo.com/searchmonkey/context/
country SearchMonkey Country Datatypes http://search.yahoo.com/searchmonkey-datatype/country/
currency SearchMonkey Currency Datatypes http://search.yahoo.com/searchmonkey-datatype/currency/
dbpedia DBPedia http://dbpedia.org/resource/
dc Dublin Core http://purl.org/dc/terms/
fb Freebase http://rdf.freebase.com/
feed SearchMonkey Feed http://search.yahoo.com/searchmonkey/feed/
finance SearchMonkey Finance http://search.yahoo.com/searchmonkey/finance/
foaf FOAF http://xmlns.com/foaf/0.1/
geo GeoRSS http://www.georss.org/georss#
gr GoodRelations http://purl.org/goodrelations/v1#
job SearchMonkey Jobs http://search.yahoo.com/searchmonkey/job/
media SearchMonkey Media http://search.yahoo.com/searchmonkey/media/
news SearchMonkey News http://search.yahoo.com/searchmonkey/news/
owl OWL ontology language http://www.w3.org/2002/07/owl#
page SearchMonkey Page (deprecated) http://search.yahoo.com/searchmonkey/page/
product SearchMonkey Product http://search.yahoo.com/searchmonkey/product/
rdf RDF http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs RDF Schema http://www.w3.org/2000/01/rdf-schema#
reference SearchMonkey Reference http://search.yahoo.com/searchmonkey/reference/
rel SearchMonkey Relations http://search.yahoo.com/searchmonkey-relation/
resume SearchMonkey Resume http://search.yahoo.com/searchmonkey/resume/
review Review http://purl.org/stuff/rev#
sioc SIOC http://rdfs.org/sioc/ns#
social SearchMonkey Social http://search.yahoo.com/searchmonkey/social/
stag Semantic Tags http://semantictagging.org/ns#
tagspace SearchMonkey Tagspace (deprecated) http://search.yahoo.com/searchmonkey/tagspace/
umbel UMBEL http://umbel.org/umbel/sc/
use SearchMonkey Use Datatypes http://search.yahoo.com/searchmonkey-datatype/use/
vcal VCalendar http://www.w3.org/2002/12/cal/icaltzd#
vcard VCard http://www.w3.org/2006/vcard/ns#
xfn XFN http://gmpg.org/xfn/11#
xhtml XHTML http://www.w3.org/1999/xhtml/vocab#
xsd XML Schema Datatypes http://www.w3.org/2001/XMLSchema#

Datatypes

Datatype vocabularies are used with in combination with literals to specify the type of literal. Some properties, like dc:identifier, may have many different possible values. To specify the type of the actual value provide, use the datatype attribute. In the following example, a datatype attribute specifies that the value of the dc:identifier is a positive integer.

[Note] Note

The datatype attribute is supported using the data::xpath , you cannot query it using data::get.

<y:meta property="dc:identifier" datatype="xsd:positiveInteger">
0545010225 </y:meta>

Datatypes help to validate the output of custom data services: a warning can be raisedif the actual value does not conform to the specified datatype.

Datatype Description
currency:XYZ A specific currency, where XYZ is any 3-letter currency code from ISO 4217 or revisions thereof
units:bytes Information size in octets
units:cm Distance in centimeters
units:ft Distance in feet
units:g Weight in grams
units:in Distance in inches
units:kg Weight in kilograms
units:km Distance in kilometers
units:lb Weight in pounds
units:m Distance in meters
units:mi Distance in miles
units:mm Distance in millimeters
units:oz Weight in ounces
use:email A string intended for use as an email address
use:fax A telephone number intended to reach a fax machine
use:isbn A string intended for use as an ISBN
use:url A string intended for use as a URL
xsd:ENTITIES See ENTITIES
xsd:ENTITY See ENTITY
xsd:ID See ID
xsd:IDREF See IDREF
xsd:IDREFS See IDREFS
xsd:NCName See NCName
xsd:NMTOKEN See NMTOKEN
xsd:NMTOKENS See NMTOKENS
xsd:NOTATION See NOTATION
xsd:Name See Name
xsd:QName See QName
xsd:anyURI See anyURI
xsd:base64Binary See base64Binary
xsd:boolean See boolean
xsd:byte See byte
xsd:date See date
xsd:dateTime See dateTime
xsd:decimal See decimal
xsd:double See double
xsd:duration See duration
xsd:float See float
xsd:gDay See gDay
xsd:gMonth See gMonth
xsd:gMonthDay See gMonthDay
xsd:gYear See gYear
xsd:gYearMonth See gYearMonth
xsd:hexBinary See hexBinary
xsd:int See int
xsd:integer See integer
xsd:language See language
xsd:list See list
xsd:long See long
xsd:negativeInteger See negativeInteger
xsd:nonNegativeInteger See nonNegativeInteger
xsd:nonPositiveInteger See nonPositiveInteger
xsd:normalizedString See normalizedString
xsd:positiveInteger See positiveInteger
xsd:short See short
xsd:string See string
xsd:time See time
xsd:token See token
xsd:union See union
xsd:unsignedByte See unsignedByte
xsd:unsignedInt See unsignedInt
xsd:unsignedLong See unsignedLong
xsd:unsignedShort See unsignedShort