<p>The "Thing" section could be set as a structure if you're planning of having hierarchy, if not, a channel would suffice. You would then create common fields that pertain to all "Things" and add them to all your entry types.</p>

<p>"Types" would be your entry types that would have different fields that are unique to the "Type" of "Thing".</p>

<ul>
<li>Thing (Section - Structure/Channel)

<ul>
<li>Name (Title)</li>
<li>Primary Image (Asset)</li>
<li>Description (Rich Text)</li>
<li>Types (Entry Types)

<ul>
<li>Product (Entry Type)

<ul>
<li>Category (Categories)</li>
<li>Features (Matrix Field)

<ul>
<li>Name (Plain Text)</li>
<li>Image (Asset)</li>
<li>Description (Rich Text)</li>
</ul></li>
</ul></li>
</ul></li>
</ul></li>
</ul>

<p>With this content model you'd be able to extrapolate quite a robust PIM system.</p>

CC BY-SA 4.0
2019-09-20T18:56:11.893Z
2019-09-20T18:56:11.893Z
Sean Langlands
<p>Does it make sense to use Craft CMS as a <strong>Product Information Management</strong> system?</p>

<p>I have already used Craft 3 for a couple of sites, and I understand part of its capabilities. I was a bit puzzled though when I started to look at defining <em>objects</em> or <em>entities</em> with <em>inheritance</em>. </p>

<p>For example, how would you use <code>Sections</code> in Craft CMS to model this entity structure? </p>

<ul>
<li>Thing

<ul>
<li>Name</li>
<li>Primary Image</li>
<li>Description (multilingual)

<ul>
<li>English</li>
<li>Norwegian</li>
</ul></li>
<li>Type

<ul>
<li>Product

<ul>
<li>Category</li>
<li>Features

<ul>
<li>Name</li>
<li>Image</li>
<li>Description</li>
<li>etc...</li>
</ul></li>
</ul></li>
<li>etc...</li>
</ul></li>
</ul></li>
</ul>

<sections><entrymodel>
Can I use Craft CMS as a PIM system?
# Can I use Craft CMS as a PIM system?

(Asked by: username_0 on 2019-09-20)

Does it make sense to use Craft CMS as a **Product Information Management** system?

I have already used Craft 3 for a couple of sites, and I understand part of its capabilities. I was a bit puzzled though when I started to look at defining *objects* or *entities* with *inheritance*.

For example, how would you use `Sections` in Craft CMS to model this entity structure?

* Thing
  + Name
  + Primary Image
  + Description (multilingual)
    - English
    - Norwegian
  + Type
    - Product
      * Category
      * Features
        + Name
        + Image
        + Description
        + etc...
    - etc...

**Tags:** sections, entrymodel


---

## 1 answers

### Answer by username_1 on 2019-09-20. Score: 1 | Accepted answer

The "Thing" section could be set as a structure if you're planning of having hierarchy, if not, a channel would suffice. You would then create common fields that pertain to all "Things" and add them to all your entry types.

"Types" would be your entry types that would have different fields that are unique to the "Type" of "Thing".

* Thing (Section - Structure/Channel)
  + Name (Title)
  + Primary Image (Asset)
  + Description (Rich Text)
  + Types (Entry Types)
    - Product (Entry Type)
      * Category (Categories)
      * Features (Matrix Field)
        + Name (Plain Text)
        + Image (Asset)
        + Description (Rich Text)

With this content model you'd be able to extrapolate quite a robust PIM system.


---

