Как предполагает lexicore, это возможно для сущностей. Это особенность любого XML-документа, не только XSD.
Сущности должны быть определены в разделе DTD. В моем случае начало моего XSD-файла выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xs:schema [
<!ENTITY Doc-Step "*** Description of the step goes here. ***">
]>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" ...
С этого момента, Doc-Step
может использоваться в любом месте документа как &Doc-Step;
, и он будет заменен соответствующей строкой анализатором XML:
<xs:attribute name="step" type="xs:byte" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">&Doc-Step;</xs:documentation>
</xs:annotation>
</xs:attribute>
Поскольку @Doc-Step;
может использоваться в нескольких местах, это позволяет повторно использовать документацию. Еще одна приятная особенность заключается в том, что она позволяет собирать все строки документации в одном месте - отлично подходит для обслуживания.