Основная причина в том, что атрибуты связаны друг с другом, чтобы определить, как рисовать изображение, и есть другие части приложения, которые ожидают такого расположения. Когда автор настраивает изображение, AEM создаст узел изображения под узлом jcr: content вашей страницы.
/content/mysite/mypage/jcr:content/image/<attributes>
Image Фонд класса, а также AbstractImageServlet ожидают определенные признаки появляются на узле изображения.
Например, эти два URL-адреса отображают одно и то же изображение.
1. http://localhost:4502/content/geometrixx/en/events/dsc.img.png
2. http://localhost:4502/content/dam/geometrixx/banners/dsc.jpg
Первый URL-адрес указывает на cq:page
узел и добавляет селектор img
. Этот селектор вызывает сервлет, который извлекает информацию из первого image
узла, который находится под узлом jcr:content
страницы. У этого узла image
есть атрибут fileReference
, указывающий на фактическое изображение DAM, которое является вторым URL-адресом. Затем сервлет отображает URL-адрес, указанный в атрибуте fileReference
.
В вашем первом примере - компонент логотипа - атрибуты относятся к компоненту. Если у вас был парсис на странице по пути par
, то если вы добавили компонент логотипа на страницу, у вас будет следующий путь под узлом cq:page
.
/content/mysite/mypage/jcr:content/par/logo/<attributes>
Теперь, когда вы используете селектор img
для вызова сервлета изображения, он будет принимать атрибуты логотипа во внимание.
http://localhost:4502/content/mysite/mypage/jcr:content/par/logo.img.png
Для второго примера - комплексный компонент - вы организуете изображение атрибутов под image
узла, чтобы изолировать эти атрибуты от других параметров.
Это начинает иметь смысл. Мне нужно будет перечитать это несколько раз, но я начинаю видеть взаимосвязь создания компонентов и как это переводится как собственно создание сайта и как создаются ссылки. – knennigtri