WEM Assets: Understanding the Assets in WebCenter Sites
One of the great advantages of implementing a web experience management tool such as WebCenter Sites is the standardization and management of assets. In the words of many of my non-developer friends and even my own father, Long pause …“Ok that doesn’t mean anything to me, I thought you built websites. What is an asset?”
Simply put in WCS everything is an asset. Let me explain. An asset is defined as:
“An object that stored in the WCS database that can be created, edited, inspected, deleted, duplicated, placed into workflow, tracked through revision tracking, searched for, and published for delivery to your site.” - Oracle WebCenter Sites Developers Guide
So how does one make sense of this broad definition and proceed with breaking a WEM experience into assets that make sense? Assets themselves perform one of three roles in WCS. The can:
1. Provide Content – To be read (or otherwise consumed) by website visitors.
2. Provide Formatting – The behind the scenes code upon which the content sits.
3. Provide Structure – The scaffolding for storing content in the WCS database.
Now this is starting to narrow the definition of what an asset is. As a developer my goal is to design asset types that make it easy for content contributors to work, while simultaneously being efficiently rendered for site visitors to view. See how this balancing act works? Happy contributors and happy users. The only thing that stands between these two worlds is a bunch of assets.
In WCS assets can fall into one of two data models.
Basic Assets: Basic assets have one primary storage table and basic parent-child relationships with each other. These stand alone assets can be an article, a picture, a query, etc.
Or, the more complex and mysterious:
Flex Assets: Flex assets can stretch across multiple database tables, have many more fields than basic assets, and can inherit attribute values from a family tree that resembles the Houses of Lancaster and York circa 1399 – 1485AD. The bottom line is you can do a lot with these families of assets.
Out-of-the-box WebCenter Sites will show up on your doorstep with a Mary Poppins-like-bag containing the following asset types:
1. Query – Query assets are used to retrieve a list of data based on your specifications. These can be used in page assets, collections, or recommendations.
2. Collections – Collections are built from one or more queries and store an ordered list of assets of one type.
3. Page – A page stores references to other asset types and is how you visually represent your site.
4. Template – Template represent the building blocks that make up pages and pagelets.
5. CSElement – CSElements are used for code that you want to share across more than one template, but they don’t render assets themselves.
6. SiteEntry – These represent a WCS page or pagelet and has CSElement assigned as the root element to generate the page.
7. Attribute Editor – An editor that specifies how data is entered for a flex attribute when that attribute is displayed.
So there you have it, a spoon full of sugar to help the medicine go down. It was quick overview of some of the assets included in WCS and what they are used for, but there will be more to come. Next time we will dive a little deeper into how to choose which asset model you should use to represent your content.