# Recommended spec for list item content

**URL:** <https://discuss.prosemirror.net/t/recommended-spec-for-list-item-content/8247>\
**Category:** Uncategorized\
**Created:** [March 6, 2025, 1:07am UTC](https://discuss.prosemirror.net/t/recommended-spec-for-list-item-content/8247 "2025-03-06T01:07:23Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![tommoor](https://discuss.prosemirror.net/user_avatar/discuss.prosemirror.net/tommoor/32/1648_2.png) [@tommoor](https://discuss.prosemirror.net/u/tommoor)\
**Post date:** [March 6, 2025, 1:07am UTC](https://discuss.prosemirror.net/t/recommended-spec-for-list-item-content/8247/1 "2025-03-06T01:07:23Z")

</div>

Hi, long time user and sponsor of Prosemirror –

I recently realized that some of our users frustrations with lists come from the fact that the `spec` for list\_item has been set as `paragraph block*`, this came from the recommendations in the [GitHub - ProseMirror/prosemirror-schema-list: List-related schema elements and commands for ProseMirror](https://github.com/ProseMirror/prosemirror-schema-list) but I’m unclear why the first item is enforced to be a paragraph.

In testing everything including splitting, wrapping etc seems to work fine with a simpler spec of `block+`. Any insight?

---

<div class="post-metadata">

**Author:** ![marijn](https://discuss.prosemirror.net/user_avatar/discuss.prosemirror.net/marijn/32/15_2.png) [@marijn](https://discuss.prosemirror.net/u/marijn)\
**Post date:** [March 6, 2025, 7:03am UTC](https://discuss.prosemirror.net/t/recommended-spec-for-list-item-content/8247/2 "2025-03-06T07:03:05Z")

</div>

It’s common to force the first block in a list item to be a paragraph to forbid things like another list starting directly at the top of an item…

- 
  - 
    - (markdown seems to be fine with that)

But there’s absolutely no harm in just making it `block+` if that works better for you.

---

<div class="post-metadata">

**Author:** ![tommoor](https://discuss.prosemirror.net/user_avatar/discuss.prosemirror.net/tommoor/32/1648_2.png) [@tommoor](https://discuss.prosemirror.net/u/tommoor)\
**Post date:** [March 6, 2025, 1:59pm UTC](https://discuss.prosemirror.net/t/recommended-spec-for-list-item-content/8247/3 "2025-03-06T13:59:22Z")

</div>

Ah I see, that makes sense – I would rather not allow immediately nested lists like that if possible but all other blocks are fine. A spec format for for _not_ would be super useful here, something like `content: (block+ !listGroup)`
