ГОСТ Р 70317—2022
«Application Schema»
Metadata base
«Application Schema»
Metadata Common Classes
«Application Schema»
Metadata for Lineage
J
«realize»
«XML.namespace»
mdb.xsd
_Metadata
MD_Metadata
+resourceLineage
0..*
«Abstract»
_Lineagelnformation
«import»
«import»
У
«realize»
«XML.namespace»
mcc.xsd
Содержимое Lineage реализуется
классом LI_Lineage, который заменяет
абстрактный Knacc_Lineagelnformation
«XML.namespace»
mtL.xsd
LILineage
«realize»
Примечание — Абстрактный класс реализован в пространстве имен общих классов метаданных и ис
пользуется как цель необязательного свойства. Чтобы создать экземпляр свойства в экземпляре XML, необходимо
импортировать пространство имен, которое содержит конкретный класс в группе подстановок для абстрактного
класса (mrl.xsd на этой диаграмме).
Рисунок 3 — Шаблон реализации для необязательных свойств с классом типа данных в другом пакете
Стандартное кодирование типа свойства класса XML для абстрактного типа свойства класса:
<complexType name="Abstract_LineageInformation_PropertyType">
<sequence minOccurs="0">
<element ref="mcc:Abstract_LineageInformation"/>
</sequence>
<attributeGroup ref="gco:ObjectReference"/>
<attribute ref="geo:nilReason"/>
</complexType>
Пример 3
—
Определение конкретного класса в группе подстановок для абстрактного класса,
в отдельном пространстве имен (mrl).
<element name="LI_L±neage" substitutionGroup="тсс:Abstract_LineageInformation"
type="mrl:LI_Lineage_Type"/>
<!-- сложный тип расширяет тип абстрактного класса -->
ccomplexType name="LI_Lineage_Type">
<complexContent>
<ехtension base="mcc:Abstract_LineageInformation_Type">
<sequence>
<!-- определение элементов в конкретном экземпляре... -->
</sequence>
</extension>
</complexContent>
</complexType>
Реализация метаданных, которая будет использовать элемент LIJLineage, должна импортировать
пространство имен mrl.
25