1

In Advanced Search we can select a Schema under Based on Schema. The drop-down shows:

  • "Regular" (text) Schemas
  • Multimedia Schemas
  • Metadata Schemas

But I can also see Embedded Schemas.

Based on a (my) literal interpretation of "Based on Schema," I'm not sure search would return Tridion items based on Embedded Schemas (I wasn't able to get results searching for * with an Embedded Schema selected on a 2013 SP1).

  • Should searching by Embedded Schemas "work" in Advanced Search?
  • If so, if I search for * with an Embedded Schema, what types of items should come back?
  • Does picking a Schema field and Search for value for an Embedded Schema matter (could I find items that have those values, even if they're not based on an Embedded Schema)?

Related to the fields, for a "List of Links" Schema that uses a "Link" embedded Schema, I only see the embedded "Link" field as a Schema field option rather than the embedded fields. Does that mean I'm searching on the embedded XML for each <link>?

Update: to be clear (for @johnwinter, really), I've tested on SDL Tridion 2013 SP1 and have asked around and can't get items back based on Embedded Schemas. I'd almost bet Embedded Schemas are in the Schema list by accident. I've submitted an idea to ask they're removed or for search to be updated to let us find fields in Embedded Schemas that are used by other Schemas.

For reference, here are the Schemas:

List of Links

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.electridion.com/tridion/schemas/links" xmlns:tcmi="http://www.tridion.com/ContentManager/5.0/Instance" xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified" targetNamespace="http://www.electridion.com/tridion/schemas/links">
  <xsd:import namespace="http://www.tridion.com/ContentManager/5.0/Instance" schemaLocation="cm_xml_inst.xsd"></xsd:import>
  <xsd:include schemaLocation="tcm:64-6109-8"></xsd:include>
  <xsd:annotation>
    <xsd:appinfo>
      <tcm:Labels xmlns:tcm="http://www.tridion.com/ContentManager/5.0">
        <tcm:Label ElementName="Link" Metadata="false">Link</tcm:Label>
      </tcm:Labels>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element name="Links">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Link" minOccurs="1" maxOccurs="unbounded" type="Content">
          <xsd:annotation>
            <xsd:appinfo>
              <tcm:ExtensionXml xmlns:tcm="http://www.tridion.com/ContentManager/5.0"></tcm:ExtensionXml>
              <tcm:EmbeddedSchema xmlns:tcm="http://www.tridion.com/ContentManager/5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="tcm:64-6109-8" xlink:title="(Embedded) Link Element"></tcm:EmbeddedSchema>
            </xsd:appinfo>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

(Embedded Schema) Link Element

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tcmi="http://www.tridion.com/ContentManager/5.0/Instance" xmlns="" xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified">
  <xsd:import namespace="http://www.tridion.com/ContentManager/5.0/Instance" schemaLocation="cm_xml_inst.xsd"></xsd:import>
  <xsd:annotation>
    <xsd:appinfo>
      <tcm:Labels xmlns:tcm="http://www.tridion.com/ContentManager/5.0">
        <tcm:Label ElementName="DisplayText" Metadata="false">Display Text</tcm:Label>
        <tcm:Label ElementName="ComponentLink" Metadata="false">Component Link</tcm:Label>
        <tcm:Label ElementName="ExternalLink" Metadata="false">External Link</tcm:Label>
      </tcm:Labels>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:complexType name="Content">
    <xsd:sequence>
      <xsd:element name="DisplayText" minOccurs="1" maxOccurs="1" type="xsd:normalizedString">
        <xsd:annotation>
          <xsd:appinfo>
            <tcm:ExtensionXml xmlns:tcm="http://www.tridion.com/ContentManager/5.0"></tcm:ExtensionXml>
          </xsd:appinfo>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="ComponentLink" minOccurs="0" maxOccurs="1" type="tcmi:SimpleLink">
        <xsd:annotation>
          <xsd:appinfo>
            <tcm:ExtensionXml xmlns:tcm="http://www.tridion.com/ContentManager/5.0"></tcm:ExtensionXml>
            <tcm:linktype xmlns:tcm="http://www.tridion.com/ContentManager/5.0">ComponentLink</tcm:linktype>
            <tcm:AllowMultimediaLinks xmlns:tcm="http://www.tridion.com/ContentManager/5.0">false</tcm:AllowMultimediaLinks>
          </xsd:appinfo>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="ExternalLink" minOccurs="0" maxOccurs="1" type="tcmi:SimpleLink">
        <xsd:annotation>
          <xsd:appinfo>
            <tcm:ExtensionXml xmlns:tcm="http://www.tridion.com/ContentManager/5.0"></tcm:ExtensionXml>
            <tcm:linktype xmlns:tcm="http://www.tridion.com/ContentManager/5.0">ExternalLink</tcm:linktype>
          </xsd:appinfo>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>
1
  • I tried this: "I wasn't able to get results searching for * with an Embedded Schema selected on a 2013 SP1." I should clarify that's even when I have Components based on Schemas that use that Embedded Schema. I also submitted an idea to Tridion Ideas. ;-) Commented Mar 18, 2015 at 22:53

1 Answer 1

1

The documentation for based on Schema states:

Select this option and select a Schema from the dropdown to limit your search to only items that are based on the Schema you select.

The Embedded Schemas in the list won't work based on this. I'm guessing most CMS users just ignore them.

I submitted an idea to remove these or improve the search features. Basically, even if searching by Embedded Schema did work, editors wouldn't always know which Embedded Schema are used in which regular or Multimedia Schemas. Searching any of the fields (embedded or not) in a Schema would probably be a better experience.

I also added that the search option for individual fields is text based, even for date- or Category-based.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.