ГОСТ Р ИСО/МЭК 13250-3—2012
Приложение А
(обязательное)
Схема RELAX-NG для ХТМ 2.0
#
# XML Topic Maps 2.0
#
# Это нормативная схема RELAX-NG для синтаксиса ХТМ 2.0.
# определенного в ISO 13250-3.
#
#
#
# — Общие декларации
default namespace =
«http://wwvv.topicmaps.org/xtm/»
namespace xtm = ehttp:/.\vww.topicmap5.org/xtnV»
datatypes xsd =
<xhttp://vAvw.w3.org/2001/XMLSchema-datatypes»
start = topicMap
reifiable = attribute reifier { xsd:anyURI}?. itemldentity*
href = attribute href { xsd:anyURI}
any-markup = (text | element * - xtm:’ { attribute * { text }*. any-markup* })*
# — Схема
topicMap = element topicMap { reifiable. version, mergeMap*.
(topic | association)’ }
version = attribute version { «2.0» }
topic = element topic { id.
(itemldentity | subjectLocator | subjectldentifier)*.
instanceOf?. (name | occurrence)*}
id = attribute id ( xsd:!D }
name = element name { reifiable. type?, scope?, value, variant*}
value = element value { text}
variant = element variant { reifiable. scope. (resourceRef | resourceData)}
scope = element scope { topicRef+ }
instanceOf = element instanceOf { topicRef* }
type = element type { topicRef}
occurrence = element occurrence { reifiable,
type, scope?. ( resourceRef ] resourceData )}
datatype = attribute datatype ( xsd:anyURI }
resourceData = element resourceData { datatype?, any-markup }
association = element association { reifiable. type, scope?. role* }
role = element rote { reifiable, type. topicRef}
topicRef = element topicRef { href}
resourceRef = element resourceRef { href}
subjectLocator = element subjectLocator ( href}
subjectldentifier = element subjectldentifier { href }
itemldentity = element itemldentity { href}
mergeMap = element mergeMap { href}
# — Коней схемы
8