forked from schemaorg/schemaorg
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathold_extension.html
156 lines (129 loc) · 6.97 KB
/
old_extension.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Extending Schemas - schema.org</title>
<meta name="description" content="Schema.org is a set of extensible schemas that enables webmasters to embed
structured data on their web pages for use by search engines and other applications." />
<link rel="stylesheet" type="text/css" href="schemaorg.css" />
<!-- ##### Generated insert [CSEScript-start] see scripts/genhtmlinserts.sh ##### -->
<!-- Enable CSE Search -->
<script>
(function() {
var cx = '013516846811604855281:nj5laplixaa'; // Insert your own Custom Search engine ID here
var gcse = document.createElement('script'); gcse.type = 'text/javascript'; gcse.async = true;
gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse, s);
})();
</script>
<!-- ##### Generated insert [CSEScript-end] see scripts/genhtmlinserts.sh ##### -->
</head>
<body>
<!-- ##### Generated insert [DOCSHDR-start] see scripts/genhtmlinserts.sh ##### -->
<div id="container">
<div id="intro">
<div id="pageHeader">
<div class="wrapper">
<div id="sitename">
<h1>
<a href="../">schema.org</a>
</h1>
</div>
<div id="cse-search-form" style="width: 400px;">
<div class="gcse-searchbox-only" data-resultsurl="search_results.html"></div>
</div>
</div>
</div>
</div>
</div>
<div id="selectionbar">
<div class="wrapper">
<ul>
<li>
<a href="documents.html" >Documentation</a>
</li>
<li>
<a href="schemas.html" >Schemas</a>
</li>
<li>
<a href="../" >Home</a>
</li>
</ul>
</div>
</div>
<!-- ##### Generated insert [DOCSHDR-end] see scripts/genhtmlinserts.sh ##### -->
<div id="mainContent" class="faq">
<h2>("Slash-based") Extension Mechanism (2011-2015)</h2>
<p><b>Status Note:</b>
<p>This page is archived. See also <a href="old_extension_2015.html">2014-2018 documentation</a>.
Our <a href="/docs/extension.html">approach</a> was refined again in April 2019.</p>
<br/>This page introduces our original 2011-2014 approach to extensibility. In addition to this technique and our <a href="extension.html">new mechanisms</a>,
other general extensibility mechanisms available for publishers include the use of RDFa and JSON-LD (as
they are designed to work with multiple schemas), the <a href="/Role">Role</a> type and
<a href="/additionalType">additionalType</a> property can now also be used for different extension scenarios.
</p>
<p>It is also perfectly fine (and often useful) to combine schema.org with other "Web schemas" such as those listed in the <a href="http://lov.okfn.org/dataset/lov/">LOV</a> catalogue.</p>
<p>Finally, we invite collaboration via <a href="https://github.com/schemaorg/schemaorg">GitHub</a> and <a href="http://www.w3.org/community/schemaorg">W3C</a>
on improving schema.org's own schemas to make them more useful. See the <a href="/docs/releases.html">release history page</a> to learn more about
previous extensions that have been integrated.
</p>
<hr />
<h3>Original Text follows:</h3>
<p>Many applications, including search, can make use of structured data only when it’s expressed using vocabularies that they understand. However, the variety and richness of structured data covering everything on the web is much too rich for a single organization (like <a href="http://schema.org/" target="new">schema.org</a>) to completely cover.</p>
<p>
Therefore, schema.org has created an extension mechanism that lets webmasters and developers extend our existing schemas. When you extend our schemas and use these extensions to mark up your data, search applications can at least partially understand your markup and use the data appropriately.
</p>
<p>
(Of course, you can always create new schemas that are not at all tied to those on schema.org, and you should do this if the content of your domain is not covered by any of the schema.org types. If the schema gains adoption and proves useful to search applications, search engines may start using this data.)
</p>
<p>
Extensions that gain significant adoption on the web may be moved into the core schema.org vocabulary, so that search engines can provide more functionality based on better understanding of the structured data.
</p>
<h2>Note on naming conventions</h2>
Schema.org uses the following naming convention. We request that you follow this naming convention
for your extensions as well.
<ul>
<li>Types and Enumerations start with a capital letter and are <a href=http://en.wikipedia.org/wiki/CamelCase>CamelCase</a>.
<li>Properties start with a lower case letter and are also camelCase.</li>
</ul>
<h2>How to extend schema.org vocabulary</h2>
<p>
schema.org uses the '/' character to create extensions that are specializations of existing schema.org vocabulary.
</p>
<h3>Extending an existing property</h3>
<p>Extend a property with a / character, followed by the name of the extension, like this:
</p>
<pre>
musicGroupMember/leadVocalist
musicGroupMember/leadGuitar1
musicGroupMember/leadGuitar2
</pre>
<h3>Extending an existing class</h3>
<p>Extend a class name with the character '/' followed by the name of the extension, like this:
</p>
<pre>
Person/Engineer
</pre>
<p>
To introduce a new class that is a specialization of an existing specialized class, continue in the same way, like this:
</p>
<pre>Person/Engineer/ElectricalEngineer
</pre>
<h3>Extending an enum item</h3>
<p>Extend an existing enumeration name with the character '/' followed by the name of the extension. For example, to extend the existing item <code>EBook</code> with the more specialized <code>KindleBook</code>:
</p>
<pre>
EBook/KindleBook
</pre>
<p>
You can introduce new properties for any class defined on <a href="http://schema.org" targt="new">schema.org</a>, even if the property is not a specialization of an existing property. We encourage webmasters to do this, rather than defining a new class independently, so that at least some of the information about the entity being described can be understood by search engines.
</p>
<p>
Of course, you can always create new schemas that are not at all tied to those on schema.org, and you should do this if the content of your domain is not covered by any of the schema.org types. As soon as your schemas gain sufficient adoption, search engines will start using their data.
</p>
</div>
<div id="footer"><p>
<a href="../docs/terms.html">Terms and conditions</a></p>
</div>
</body>
</html>